ubuntu 20.04使用qt开发ros1
时间: 2025-07-08 12:13:26 浏览: 1
<think>我们被要求提供一个在Ubuntu 20.04上使用Qt进行ROS1开发的配置指南。根据引用内容,我们可以总结出以下步骤:
1. 安装ROS1(这里假设是Noetic版本,因为Ubuntu20.04对应的是Noetic)
2. 安装Qt(这里建议使用Qt5.12.12,因为引用的插件支持到Qt Creator 12,而Qt5.12.12自带的Qt Creator版本较低,但我们需要安装Qt Creator 12.0.1,然后安装Qt5.12.12)
3. 安装必要的依赖
4. 安装ros_qtc_plugin插件并配置
但是,根据引用[3]中的经验,需要注意避免版本冲突,特别是Qt Creator的版本。
具体步骤:
### 步骤1: 安装ROS Noetic
如果还没有安装ROS,请按照官方指南安装ROS Noetic。
### 步骤2: 安装Qt Creator 12.0.1(注意:这里需要安装支持插件的Qt Creator版本)
根据引用[3]的建议,我们需要先安装Qt Creator 12.0.1(因为插件支持到12版本)。我们可以从Qt官网下载Qt Creator 12.0.1的安装包,但注意Qt Creator通常作为Qt的一部分发布,所以我们需要下载一个包含Qt Creator 12.0.1的Qt版本,或者单独安装Qt Creator。
然而,引用[3]提到,他们下载了离线版本的Qt5.12.12,而Qt5.12.12自带的Qt Creator版本可能不是12.0.1(实际上Qt5.12.12自带的是Qt Creator 4.11.0)。因此,我们需要单独安装Qt Creator 12.0.1。
实际上,ros_qtc_plugin的文档(引用[2])中指定了支持的Qt Creator版本:10.0.1, 11.0.0, 12.0.1。所以我们选择Qt Creator 12.0.1。
我们可以从Qt官网的下载存档中获取Qt Creator 12.0.1。但是,Qt Creator 12.0.1是Qt 6.5.0的一部分,所以我们需要下载Qt 6.5.0的安装包,然后只安装Qt Creator 12.0.1?或者我们可以单独安装Qt Creator?
实际上,在Qt的下载页面,我们可以选择只安装Qt Creator。但是,为了确保兼容性,我们按照引用[3]的方法,先安装Qt Creator 12.0.1,再安装Qt5.12.12。
### 步骤3: 安装Qt5.12.12
从Qt官网下载Qt5.12.12的离线安装包(因为在线安装可能较慢),然后安装。安装时可以选择组件,确保安装Qt5.12.12的桌面开发组件。
### 步骤4: 安装依赖
根据引用[1]和[3],需要安装一些依赖:
```bash
sudo apt install libgl1-mesa-dev ninja-build libyaml-cpp-dev libqtermwidget5-0-dev libutf8proc-dev
```
另外,引用[3]提到,如果安装后打不开Qt Creator,可以安装:
```bash
sudo apt install libxcb-cursor0
```
### 步骤5: 安装ros_qtc_plugin
ros_qtc_plugin的安装可以通过两种方式:二进制包安装或源码编译安装。
#### 方法1: 二进制安装(推荐)
在ROS的wiki上有提供二进制安装方式:
```bash
sudo add-apt-repository ppa:beineri/opt-qt-5.12.12-xenial
sudo apt-get update
```
但注意,这个ppa可能不是官方的,而且我们使用的是Ubuntu20.04,所以建议按照插件官方文档进行。
实际上,根据引用[2]的GitHub页面,我们可以使用以下命令安装:
```bash
sudo apt-get install ros-noetic-qt-create ros-noetic-qt-build
```
但是,这些包在ROS官方源中可能不存在。因此,我们可能需要从源码编译安装。
#### 方法2: 源码编译安装
参考GitHub仓库的说明:https://github.com/ros-industrial/ros_qtc_plugin
1. 克隆仓库:
```bash
git clone https://github.com/ros-industrial/ros_qtc_plugin.git
```
2. 进入仓库目录,并切换到与你的Qt Creator版本兼容的分支(例如,对于Qt Creator 12.0.1,可能需要查看release分支)。
3. 按照仓库中的安装说明进行编译和安装。
但是,这个过程可能比较复杂。实际上,引用[3]中提到,他们是通过在Qt Creator中安装插件的方式(即从GitHub下载插件,然后在Qt Creator中手动安装)。
### 步骤6: 在Qt Creator中安装插件
1. 启动Qt Creator 12.0.1(确保使用12.0.1版本)
2. 打开菜单:Help -> About Plugins...
3. 在搜索框中搜索“ros”,找到“ROS Qt Creator Plug-in”,然后启用它(可能需要重启Qt Creator)。
但是,引用[3]提到,他们是通过下载插件然后手动安装的。具体步骤可能是:
- 从GitHub下载对应版本的插件(编译好的二进制插件包,或者从源码构建)。
- 然后通过Qt Creator的插件管理界面进行安装。
### 步骤7: 配置Qt Creator
安装完插件后,需要配置Qt Creator以使用ROS环境。
1. 打开Qt Creator,进入菜单:Tools -> Options -> Environment -> ROS。
2. 设置ROS的安装路径(通常为`/opt/ros/noetic`)和ROS工作空间。
3. 确保插件能够识别ROS的setup.bash文件。
### 步骤8: 测试
创建一个新的ROS工作空间或打开一个已有的ROS包,然后尝试在Qt Creator中编译和运行ROS节点。
### 注意事项
- 引用[3]提到,安装多个Qt Creator版本可能会导致系统默认启动的版本不是我们想要的。因此,建议直接通过安装目录下的Qt Creator可执行文件启动(例如,`~/Qt/Tools/QtCreator/bin/qtcreator`),并创建桌面快捷方式。
- 在安装过程中,如果遇到Qt Creator启动问题,尝试安装`libxcb-cursor0`。
### 总结步骤
1. 安装ROS Noetic(如果尚未安装)。
2. 下载并安装Qt Creator 12.0.1(可以从Qt官网的下载存档中获取)。
3. 下载并安装Qt5.12.12(离线安装包)。
4. 安装依赖:`sudo apt install libgl1-mesa-dev ninja-build libyaml-cpp-dev libqtermwidget5-0-dev libutf8proc-dev libxcb-cursor0`
5. 安装ros_qtc_plugin插件:建议通过源码编译安装或按照官方文档安装。
6. 配置Qt Creator的ROS插件。
由于ros_qtc_plugin的安装步骤可能较为复杂,且不同版本可能有差异,请务必参考官方文档:https://ros-qtc-plugin.readthedocs.io
### 相关问题
1. 如何解决在Ubuntu20.04上安装Qt后无法启动Qt Creator的问题?
2. ros_qtc_plugin支持哪些Qt Creator版本?
3. 如何在Qt Creator中创建ROS工作空间和包?
4. 如何配置Qt Creator以使用ROS的编译系统(catkin_make或catkin build)?</think>### Ubuntu 20.04 Qt开发 ROS1 配置指南
#### 1. **安装ROS Noetic**
- 安装完整版ROS Noetic(Ubuntu 20.04官方支持版本):
```bash
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu focal main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt update
sudo apt install ros-noetic-desktop-full
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
```
#### 2. **安装Qt 5.12.12**
- **下载离线安装包**:
从[Qt官网存档](https://download.qt.io/archive/qt/5.12/5.12.12/)下载 `qt-opensource-linux-x64-5.12.12.run`
- **安装依赖**:
```bash
sudo apt install libxcb-cursor0 libxcb-xinerama0 libgl1-mesa-dev
```
- **运行安装程序**:
```bash
chmod +x qt-opensource-linux-x64-5.12.12.run
./qt-opensource-linux-x64-5.12.12.run
```
安装时选择组件:`Qt 5.12.12` 核心模块及 `Qt Creator 4.11.0`。
#### 3. **安装ROS Qt插件**
- **下载插件**:
```bash
git clone https://github.com/ros-industrial/ros_qtc_plugin.git
cd ros_qtc_plugin
```
- **编译安装**:
```bash
mkdir build && cd build
qmake ..
make -j$(nproc)
sudo make install
```
#### 4. **配置Qt Creator**
1. 启动Qt Creator(通过安装路径启动,如 `~/Qt5.12.12/Tools/QtCreator/bin/qtcreator`)
2. **配置ROS环境**:
- 打开 `Tools > Options > Environment > ROS`
- 设置 `ROS distribution` 为 `noetic`
- 指定 `ROS setup script` 为 `/opt/ros/noetic/setup.bash`
3. **验证插件**:
- 新建项目时选择 `ROS Workspace` 或 `ROS Package`
- 确保能识别ROS节点和依赖
#### 5. **测试开发环境**
1. 创建示例ROS包:
```bash
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws
catkin_make
```
2. 在Qt Creator中:
- `File > New File or Project > ROS > ROS Workspace`
- 选择 `~/catkin_ws` 路径
- 添加一个 `Publisher/Subscriber` 节点模板进行测试
#### 6. **常见问题解决**
- **Qt Creator无法启动**:
```bash
sudo apt install libxcb-cursor0 # 修复缺失库 [^3]
```
- **插件兼容性问题**:
- 确保使用 **Qt Creator 4.11.0**(与Qt 5.12.12捆绑)
- 避免安装高版本Qt Creator(如13+)[^3]
- **ROS环境加载失败**:
- 在 `~/.profile` 中添加:
```bash
source /opt/ros/noetic/setup.bash
source ~/catkin_ws/devel/setup.bash
```
> **关键提示**:
> 始终通过安装目录直接启动Qt Creator(如 `~/Qt5.12.12/Tools/QtCreator/bin/qtcreator`),避免系统默认版本冲突[^3]。
---
###
阅读全文
相关推荐

















