0
点赞
收藏
分享

微信扫一扫

Ubuntu、ROS、PX4常见问题及其解决办法


文章目录

  • ​​前言​​
  • ​​一、编译时报错Project ‘cv_bridge‘ specifies ‘/usr/include/opencv‘ as an include dir, which is not found.​​
  • ​​二、在C++程序中启动shell脚本​​
  • ​​三、开机自启动ROS程序​​
  • ​​1、编写启动脚本​​
  • ​​2、添加到自启动​​
  • ​​四、使用catkin_make编译ROS代码时报错:CMake Error: The current CMakeCache.txt directory ***is different***​​
  • ​​五、ROS catkin_make时报错:fatal error: turtlesim/Spawn.h: No such file or directory #include <turtlesim/Sp​​
  • ​​六、ubuntu18.04源码安装ROS导航包(navigation)​​
  • ​​七、由于没有公钥,无法验证下列签名: NO_PUBKEY 76F1A20FF987672F​​
  • ​​八、catkin_make时报错 Could not find a package configuration file provided by......​​
  • ​​九、sudo apt-get update报错 404 Not Found​​
  • ​​十、“Could not get lock /var/lib/dpkg/lock-frontend“解决办法​​
  • ​​十一、git克隆代码时下载失败​​
  • ​​十二、将PX4源码移动到别的目录下编译​​
  • ​​十三、PX4飞控的偏航角一直飘移​​
  • ​​十四、PX4固件在运行时因为内存不够用而自动重启解决办法​​
  • ​​十五、px4自定义曲调​​
  • ​​十六、px4官网中文显示​​
  • ​​十七、source insight​​
  • ​​1.不能跳转​​
  • ​​2.中文乱码​​
  • ​​3.显示工程文件​​
  • ​​新建工程​​
  • ​​十八、ubuntu下编译qt项目出现cannot find -lGL​​
  • ​​十九、pix4无法读取mb12xx传感器数据解决办法​​
  • ​​二十、ros设置环境变量​​
  • ​​二十一、px4固件四旋翼无人机飞的时候按一定频率上下抖动​​
  • ​​二十二、gazebo将背景色改为白色​​
  • ​​二十三、将Wireframe勾上​​
  • ​​二十四、px4无法修改条件参数解决办法​​
  • ​​二十五、pixracer飞控连接地面站没有姿态数据​​
  • ​​二十六、px4设置舵机反向​​
  • ​​二十七、编译px4 bootloader​​
  • ​​二十八、pix使用RTK​​
  • ​​二十九、PX4利用tfmini设置地形跟随​​
  • ​​三十、ubuntu无法新建文本文件​​
  • ​​三十一、安装git时报错 依赖没有安装​​
  • ​​三十二、北天RTK使用GGA高程数据​​
  • ​​三十三、ubuntu1804耳机没声音解决办法​​
  • ​​三十四、ubuntu安装gcc-arm-linux-gnueabihf编译器​​
  • ​​三十五、ROS命令突然都不能使用​​

前言

ubuntu18.04
ROS melodic

一、编译时报错Project ‘cv_bridge‘ specifies ‘/usr/include/opencv‘ as an include dir, which is not found.

使用catkin_make编译ROS代码时报错如下:

CMake Error at
/opt/ros/melodic/share/cv_bridge/cmake/cv_bridgeConfig.cmake:113
(message): Project ‘cv_bridge’ specifies ‘/usr/include/opencv’ as an
include dir, which is not found. It does neither exist as an
absolute directory nor in ‘${{prefix}}//usr/include/opencv’. Check
the issue tracker
‘https://github.com/ros-perception/vision_opencv/issues’ and consider
creating a ticket if the problem has not been reported yet.

解决办法:在根目录下搜索OPENCV的安装路径

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉


我的路径如下:在​​/usr/include/opencv4/opencv2​​路径下

Ubuntu、ROS、PX4常见问题及其解决办法_bash_02

然后打开报错中提示的文件​​/opt/ros/melodic/share/cv_bridge/cmake/cv_bridgeConfig.cmake​​​,在其中搜索​​/usr/include/opencv​​​,并用自己的路径​​/usr/include/opencv4/opencv2​​替换,如下:

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_03


然后重新编译即可

二、在C++程序中启动shell脚本

在有的时候,需要在程序里面启动shell脚本,当程序中满足相应的判断后,自动启动shell脚本

方法一(推荐):

std::string shell=".sh文件绝对路径";
popen(shell.c_str(),"r");

方法二:

system("gnome-terminal -- bash -c 'shell命令'")

该命令的作用是新开一个终端,在终端执行相应的shell命令,shell命令可以是单独的一条命令,也可以启动一个脚本

三、开机自启动ROS程序

1、编写启动脚本

新建一个后缀为a.sh(名称任取,后缀为.sh即可)的脚本,内容按照如下格式填写,其中每个​​gnome-terminal -- bash -c "cd 工作空间目录;source devel/setup.bash;roslaunch xxx.launch"​​中的双引号里面对应启动一个launch文件,为了防止一个launch还没启动完就启动了另一个launch导致启动失败,通过​​sleep 10 wait​​等待10秒钟(具体等待多久合适可以自己测试一下,一般要不了10秒)再启动下一个launch.每次执行一个ros的节点或者launch文件时,需要cd到对应工作空间下,执行source devel/setup.bash再启动相应的程序,即使已经在.bashrc中source过也要这么做。
典型的脚本xxx.sh如下:

#! /bin/bash
#根据系统启动相应版本的roscore
sudo chmod 777 xxxx
gnome-terminal -- bash -c "cd 工作空间目录1;source devel/setup.bash;roslaunch xxx.launch"
sleep 10
wait
gnome-terminal -- bash -c "cd 工作空间目录2;source devel/setup.bash;roslaunch xxx.launch"
sleep 10
wait
exit 0

有的脚本在执行时需要输入密码,如里面含有需要sudo的命令,以上面的脚本xxx.sh为例
为了开机时自动输入密码,新建一个start.sh,内容如下:

#! /bin/bash
gnome-terminal -- bash -c "source /opt/ros/melodic/setup.bash;roscore"
sleep 10
wait
cd /home/mobot
echo '电脑密码' | sudo -S "./xxx.sh"
sleep 10
wait
exit 0

这里先启动roscore,再通过​​echo '电脑密码' | sudo -S "./xxx.sh""​​自动输入密码执行上面的xxx.sh

2、添加到自启动

搜索并打开"启动应用程序"(如果是英文系统则搜索“startup applications”)

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_04


点击"添加"

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_05


名称和注释任取,点击“浏览”,选择start.sh

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_06


选择start.sh,注意只需选择sh启动文件即可,不需要在启动文件前面加启动命令,然后点“添加”。

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_07


然后重启电脑测试即可

四、使用catkin_make编译ROS代码时报错:CMake Error: The current CMakeCache.txt directory is different

将之前能编译的ROS工作空间改名或者移动到新的目录下编译时,报错:

CMake Error: The current CMakeCache.txt directory *** is different
than the directory ** where CMakeCache.txt was created. This may
result in binaries being created in the wrong place. If you are not
sure, reedit the CMakeCache.txt

解决办法:
将工作空间下的build和devel文件夹删除,然后重新编译即可

五、ROS catkin_make时报错:fatal error: turtlesim/Spawn.h: No such file or directory #include <turtlesim/Sp

原因是没有安装tutorials包
执行以下命令安装即可解决

sudo apt-get install ros-melodic-ros-tutorials

六、ubuntu18.04源码安装ROS导航包(navigation)

建立工作空间(已经有工作空间的可以忽略)

mkdir -p nv_ws/src
cd ~/nv_ws/src/
catkin_init_workspace
cd ~/nv_ws/
catkin_make
echo "source ~/nv_ws/devel/setup.bash">>~/.bashrc
source ~/.bashrc
echo $ROS_PACKAGE_PATH

安装依赖:

sudo apt-get install ros-melodic-navigation*

sudo apt-get remove ros-melodic-navigation ros-melodic-navigation-experimental

rosdep install teb_local_planner

下载源码并编译
打开链接后,点击页面上的 绿色按钮: Code,然后点击 Download ZIP 下载
下载导航包
​​​https://github.com/ros-planning/navigation/tree/melodic-devel​​

下载teb_local_planner ROS软件包
下载链接
​​​https://github.com/rst-tu-dortmund/teb_local_planner/tree/melodic-devel​​​ 解压后放到​​~/nav_ws/src​​目录下(或者放到自己建立的工作空间的src目录下),然后

cd ~/nav_ws/

catkin_make

七、由于没有公钥,无法验证下列签名: NO_PUBKEY 76F1A20FF987672F

在ubuntu18.04上安装win时,执行​​sudo add-apt-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main'​​时出现报错:

由于没有公钥,无法验证下列签名: NO_PUBKEY 76F1A20FF987672F

解决办法:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 76F1A20FF987672F

八、catkin_make时报错 Could not find a package configuration file provided by…

在ROS工作空间下使用catkin_make编译时,出现报错找不到包
解决办法,根据提示安装相应的包即可.

例1:

Could not find a package configuration file provided by “pcl_ros”
with any of the following names:

pcl_rosConfig.cmakepcl_ros-config.cmake

解决办法:

sudo apt-get install ros-melodic-pcl-ros

例2:

Could not find a package configuration file provided by
“jsk_recognition_msgs” with any of the following names:

jsk_recognition_msgsConfig.cmakejsk_recognition_msgs-config.cmake

fatal error: jsk_recognition_msgs/BoundingBox.h: No such file or
directory #include <jsk_recognition_msgs/BoundingBox.h>
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

解决办法:

sudo apt-get install ros-melodic-jsk-recognition-msgs

注意安装的软件包的的名称中ros的版本根据自己的实际的版本修改,版本后面跟的就是报错中的提示的缺少的包的名称,但是下划线要改成中划线
如果想安装其他的msgs也一样.
例如安装jsk_recognition_msgs

sudo apt-get install ros-melodic-jsk-recognition-msgs

sudo apt install ros-melodic-jsk-rviz-plugins

安装完后就可以在rviz中显示该消息类型的话题

Could not find a package configuration file provided by “serial”
with any of the following names:

serialConfig.cmakeserial-config.cmake

sudo apt-get install ros-melodic-serial

九、sudo apt-get update报错 404 Not Found

使用sudo apt-get update更新源时出现以下报错:

错误:7
​​ http://ppa.launchpad.net/v-launchpad-jochen-sprickerhof-de/pcl/ubuntu​​ bionic Release 404 Not Found [IP: 2001:67c:1560:8008::19 80]
正在读取软件包列表… 完成 E: 仓库
“http://ppa.launchpad.net/v-launchpad-jochen-sprickerhof-de/pcl/ubuntu
bionic Release” 没有 Release 文件。

解决办法:

打开"软件和更新"

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_08


将报错的那个源取消勾选.然后重新载入即可

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_09

十、“Could not get lock /var/lib/dpkg/lock-frontend“解决办法

执行​​apt-get install​​时,如果报以下错

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_10


则执行

ps afx|grep apt

查看apt的pid,并用kill杀死掉


Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_11


则执行

kill 3603 3584 3588 3596

然后继续执行安装命令即可

十一、git克隆代码时下载失败

用git clone下载px4 Firmware时,一些子模块因为网络原因下载失败。可以连上网后,在Firmware路径下用git submodule update --init --recursive继续下载剩余的子模块。

十二、将PX4源码移动到别的目录下编译

需要先执行

make distclean

再执行具体的编译命令

十三、PX4飞控的偏航角一直飘移

解决办法,校准陀螺仪

十四、PX4固件在运行时因为内存不够用而自动重启解决办法

启动一个自己写的线程后,飞控蜂鸣器短响三声后长响三声,然后自动重启。
原因是这个线程以运行时占用的内存超过了分配的内存,解决办法是加大分配的内存

如果是自己创建的线程

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_12

将3000改成一个更大的数。如果是PX4的工作队列,则打开文件WorkQueueManager.hpp

这个文件里包含了PX4里所有的工作队列

可以在这个文件里设置工作队列的优先级和内存空间

以static constexpr wq_config_t attitude_ctrl{“wq:attitude_ctrl”, 8000, -13};为例

括号里第一个参数是队列的名字,第二个为队列的最大内存,第三个为队列的优先级。

将第二个参数改大一点就可以解决内存不够的问题。

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_13

如果在编译的时候提示内存不够,则是cmakelist里的内存设置的不够
这个内存是运行内存,相当于sram,如果要改事先存数据的内存,也就是flash,则改cmakelist里的内存

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_14

十五、px4自定义曲调

参考
​​​https://dev.px4.io/master/en/advanced/system_tunes.html​​ 代码位置

Firmware/src/lib/tunes/tune_definition.desc

PX4_DEFINE_TUNE(0,  CUSTOM,                "",                                              true  /*  empty to align with the index */)
PX4_DEFINE_TUNE(1, STARTUP, "MFT240L8 O4aO5dc O4aO5dc O4aO5dc L16dcdcdcdc", true /* startup tune */)
PX4_DEFINE_TUNE(2, ERROR_TUNE, "MBT200a8a8a8PaaaP", true /* ERROR tone */)
PX4_DEFINE_TUNE(3, NOTIFY_POSITIVE, "MFT200e8a8a", true /* Notify Positive tone */)
PX4_DEFINE_TUNE(4, NOTIFY_NEUTRAL, "MFT200e8e", true /* Notify Neutral tone */)
PX4_DEFINE_TUNE(5, NOTIFY_NEGATIVE, "MFT200e8c8e8c8e8c8", true /* Notify Negative tone */)
PX4_DEFINE_TUNE(6, ARMING_WARNING, "MNT75L1O2G", false /* arming warning */)
PX4_DEFINE_TUNE(7, BATTERY_WARNING_SLOW, "MBNT100a8", true /* battery warning slow */)
PX4_DEFINE_TUNE(8, BATTERY_WARNING_FAST, "MBNT255a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8", true /* battery warning fast */)
PX4_DEFINE_TUNE(9, GPS_WARNING, "MFT255L4AAAL1F#", false /* gps warning slow */)
PX4_DEFINE_TUNE(10, ARMING_FAILURE, "MFT255L4<<<BAP", false /* arming failure tune */)
PX4_DEFINE_TUNE(11, PARACHUTE_RELEASE, "MFT255L16agagagag", false /* parachute release */)
PX4_DEFINE_TUNE(12, EKF_WARNING, "MFT255L8ddd#d#eeff", false /* ekf warning */)
PX4_DEFINE_TUNE(13, BARO_WARNING, "MFT255L4gf#fed#d", false /* baro warning */)
PX4_DEFINE_TUNE(14, SINGLE_BEEP, "MFT100a8", false /* single beep */)
PX4_DEFINE_TUNE(15, HOME_SET, "MFT100L4>G#6A#6B#4", false /* home set tune */)
PX4_DEFINE_TUNE(16, SD_INIT, "MFAGPAG", false /* Make FS */)
PX4_DEFINE_TUNE(17, SD_ERROR, "MNBG", false /* format failed */)
PX4_DEFINE_TUNE(18, PROG_PX4IO, "MLL32CP8MB", false /* Program PX4IO */)
PX4_DEFINE_TUNE(19, PROG_PX4IO_OK, "MLL8CDE", false /* Program PX4IO success */)
PX4_DEFINE_TUNE(20, PROG_PX4IO_ERR, "ML<<CP4CP4CP4CP4CP4", true /* Program PX4IO fail */)

双引号里的即为曲调值
如果要让无人机响某种曲调,就include “commander/helper.h”
然后待用set_tune()函数。函数括号里的值为0到20,对应不同的曲调

十六、px4官网中文显示

360浏览器设为兼容模式,选中文

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_15

十七、source insight

1.不能跳转

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_16

2.中文乱码

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_17

3.显示工程文件

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_18

新建工程

第一步

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_19

第二步

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_20


第三步

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_21


第四步

选择需要看的代码的文件夹

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_22


第五步

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_23


第六步

Ubuntu、ROS、PX4常见问题及其解决办法_bash_24


第七步

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_25


这个时候可以在软件右侧看到各个代码文件,双击打开文件就可以查看代码,但是代码里的函数无法跳转,这时需要

第八步

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_26


第九步

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_27


设置显示行号

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_28


设置背景色

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_29


Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_30


Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_31


显示已添加的所有文件的列表

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_32

十八、ubuntu下编译qt项目出现cannot find -lGL

ubuntu下编译qt项目出现cannot find -lGL
解决方法
终端输入

locate libGL.so

sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1  /usr/lib/libGL.so

十九、pix4无法读取mb12xx传感器数据解决办法

pix4的mb12xx使用的iic总线是#define PX4_I2C_BUS_EXPANSION2 4
pix1的mb12xx使用的iic总线是#define PX4_I2C_BUS_EXPANSION 1

二十、ros设置环境变量

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_33

gedit .bashrc

添加自己工作空间的setup.bash即可

二十一、px4固件四旋翼无人机飞的时候按一定频率上下抖动

解决办法

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_34


将这个参数改小一点

二十二、gazebo将背景色改为白色

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_35

二十三、将Wireframe勾上

更多保姆级PX4+ROS学习视频:https://b23.tv/ZeUDKqy

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_36

编译px4 gazebo仿真

make px4_sitl_default gazebo

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_37

会自动生成模型文件

然后再执行launch文件

启动mavros gazebo仿真时没有无人机模型

二十四、px4无法修改条件参数解决办法

有些参数(telem2波特率)是条件参数,只有用到相应的端口才能设置对应端口的波特率

以telem2为例,其他的也类似,先把参数设为默认

Ubuntu、ROS、PX4常见问题及其解决办法_bash_38


点击右上角“工具”按钮,点击“重置为载具的默认值”

然后

设置Gps1的接口为telem2,重启飞控,再查看serial参数,即可找到telem2

设置好telem2的波特率后记得把GPS的接口再设回到GPS1

二十五、pixracer飞控连接地面站没有姿态数据

下载px4 1.10.1以上版本固件

二十六、px4设置舵机反向

解决方法:在mix文件中将正负缩放的值取反

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_39


或者设置参数PWM_MAIN_REV

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_40

二十七、编译px4 bootloader

git clone https://github.com/PX4/Bootloader.git 
git submodule sync --recursive
git submodule update --init --recursive
make

二十八、pix使用RTK

将GPS1的端口设置为任意一个可用的串口,

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_41

设置该端口的波特率和RTK的波特率一致,或者设为自动。然后将RTK接到串口上即可

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_42

如果接收到RTK信号,但长时间不能定点,则将GPS检查关掉,如下

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_43


Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_44


Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_45


由于rtk的精度比普通GPS高,而飞控在利用ekf融合gps时的默认噪声比较大,因此需要将上述参数改小,比如0.01,具体的值可以查阅rtk手册,如下

Ubuntu、ROS、PX4常见问题及其解决办法_bash_46

rtk使用时如果不能一直保持fix,如下

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_47


则可能存在飞控干扰,试着将飞控加一层屏蔽

如果要使用GPS数据定高,将EKF2_HGT_MODE改为GPS

二十九、PX4利用tfmini设置地形跟随

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_48

这个参数设为1

以tfmini为例

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_49


Ubuntu、ROS、PX4常见问题及其解决办法_bash_50


我这里接的是串口2

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_51


串口2的波特率也要设置正确,如果不知道模块波特率,可以设置为auto

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_52


在设置telem2的波特率时,如果在serial那一栏找不到telem2的波特率,就先设置GPS的端口为telem2,然后重启,看是否有设置telem2波特率的选项,如果还是没有,就重置所有参数,再设置机架,然后设置GPS的端口为telem2,重启,再设置telem2的波特率。设置完telem2的波特率后,再把GPS的端口设回默认,再把tfmini的端口设为telem2

三十、ubuntu无法新建文本文件

在home目录下的模板文件夹下打开终端

gedit 新建文本文档.txt

保存然后关闭即可

三十一、安装git时报错 依赖没有安装

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_53


执行sudo apt-get update

然后再执行sudo apt-get install git

安装成功

三十二、北天RTK使用GGA高程数据

如果rtK的移动站的高度数据不一致,可以使用GGA的高度,在U-CENTER上将下面这个框勾上

Ubuntu、ROS、PX4常见问题及其解决办法_计算机视觉_54

三十三、ubuntu1804耳机没声音解决办法

将耳机插主板的音频接口,如果正常会弹出设备

选择弹出的设备即可

Ubuntu、ROS、PX4常见问题及其解决办法_人工智能_55

三十四、ubuntu安装gcc-arm-linux-gnueabihf编译器

sudo apt-get update
sudo apt-get install gcc-arm-linux-gnueabihf \
g++-arm-linux-gnueabihf pkg-config-arm-linux-gnueabihf

三十五、ROS命令突然都不能使用

ROS以前都能正常用,不知为何有关ROS的命令都用不了了,提示类似下面的报错

Command ‘roscore’ not found, but can be installed with:

sudo apt install python-roslaunch

解决办法:
在home目录下执行

gedit .bashrc

将下图语句移到下面

Ubuntu、ROS、PX4常见问题及其解决办法_ubuntu_56


如下图

Ubuntu、ROS、PX4常见问题及其解决办法_工作空间_57


然后

source .bashrc

就可以了,问题的原因还不清楚


举报

相关推荐

0 条评论