{
	"version": "2.0.0",
	"tasks": [
		{
			"label": "catkin_make",
			"type": "shell",
			"command": "catkin_make",
			"args": [
				"-DCMAKE_BUILD_TYPE=Debug"
			],
			"problemMatcher": [
				"$catkin-gcc"
			],
			"group": {
				"kind": "build",
				"isDefault": true
			}
		}
	]
}

远程访问教程:

实现Windows直接远程访问Ubuntu 18.04(旧版本也支持,无需安装第三方桌面,直接使用自带远程工具) - 法号阿兴 - 博客园

屏幕要活动

这个是取消勾选

获取ip 如何在 Ubuntu 中检查你的 IP 地址 - 知乎  命令行ip addr show

VNC怎么和宿主机共享粘贴板(整理)

VNC怎么和宿主机共享粘贴板(整理)_无知人生,记录点滴-CSDN博客_vnc 剪贴板

unix{
LIBS += -L../bin -lSupportAll#dll引用     LIBS += -L /root/QtDemo/Test -lTest
LIBS += -L../bin -lUsersWidget#../bin/UsersWidget.dll#dll引用
LIBS += -L../bin -lViewData#dll引用
LIBS += -L../bin -lAlgorithm#dll引用
}

插件区别

#ifdef Q_OS_WIN32
        if(!fileName.startsWith("Plugin"))
        {
            continue;
        }
#endif
#ifdef Q_OS_LINUX
        if(!fileName.startsWith("libPlugin"))
        {
            continue;
        }
#endif

Ubuntu中设置中英文输入法切换快捷键

左下角设置图表,设置| 往下拉 device

linux自带的系统截图工具

修改快捷方式

qt ros qmake

qt 按钮透明linux一定要勾选下面的flat

 然后样式设置为,解决单击还有黑框的问题

QPushButton{

background:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);

background:transparent;

}

qt linux 护眼色 #cbe9cf

工具->选项->文本编辑器  这里的默认主题是不可以修改背景颜色的。点击复制,然后重新起一个名字,就可以更改了。

护眼配色的方案为:红:203 绿:233 蓝:207

unbantu版本

cat /proc/version

ros版本

先在终端输入roscore
打开新终端,再输入,rosparam list
再输入rosparam get /rosdistro

qt在linux版本号

修改系统配置文件让Qt启动器选择新版的Qt Creator

$ sudo gedit /usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf

自己的修改如下

ROS Qt5 librviz人机交互界面开发一(配置QT环境)_蒋程扬的部落格-CSDN博客

直接拉到 (2)安装ROS qtc pluging版本qtcreator这里阅读

安装后会自动在桌面生成图标,点击即可打开
2,创建工作空间
此版本的qtcreator并不能像原生qtcreator打开项目,需要先创建工作空间:
文件->new file or project:
选中ros workspace

 创建ros工作空间

ROS学习--第3篇:ROS基础---创建工作空间_BIT王大东-CSDN博客_ros创建工作空间

环境变量修改

echo "source ~/Joe/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

home下新建catkin_ws,终端打开  输入 

cd ~/catkin_ws
code . # 这个点很重要

创建ros包,原来右键就可以

右键点击"src"文件夹,右键弹出选项中,点击"Create Catkin Package",输入包的名称ros_test,按Enter确认,输入包的依赖“std_msgs roscpp”,空格隔开,按Enter确认。

首先新建一个文件夹,我命名为test_ros,在该文件夹中打开终端,执行以下命令来创建ROS工作环境:

mkdir src && cd src
catkin_init_workspace
cd ../
catkin_make

然后在VScode中打开test_ros文件夹,此时的文件目录如下

编译成功后,声明环境变量+rosrun

vscode 右键添加ros包报错 createCatkinPackage requires a catkin workspace to be opened

这个报错,把工作空间删除干净,重新来就解决了。。。


 

qt中项目的编译和运行配置

【QT】Ubuntu 16如何使用qt creator加载或者创建ros工程_ipfpm的博客-CSDN博客 里面直接拉到运行节点

最坑的是这个ros专用调试输出界面

 

 qt如何打开ros包

打开 文件 双击cmakewenj

打开项目

插件的资源文件名不要和主工程的资源文件名重复。。。

git ,windows和linux平台通过vscode公共平台,连接到vsts上面,联合开发。

vsts的git不支持qt,所以用上面的方法

换了一个环境,运行ros包,报错

libstdc++.so.6: version `GLIBCXX3.4.22’ not found

qt Could not parse stylesheet of object 0x561ad17b07a0   

原因:大小写拼错了,QComboBox,写成了QcomboBox

 qt环境变量

sudo gedit /etc/bash.bashrc

然后添加

QTDIR=~/Qt5.9.9/Tools/QtCreator/bin/QtCreator  这是原生的  下面是ros-qt的

QTDIR=~/QtCreator/latest/bin/QtCreator
~/Qt5.9.9/5.9.9

export QTDIR=~/Qt5.9.9/5.9.9

export PATH=$QTDIR/gcc_64/bin:$PATH

export LD_LIBRARY_PATH=$QTDIR/gcc_64/lib:$LD_LIBRARY_PATH

source /etc/bash.bashrc
  环境变量生效

ros_qt

创建一个工作空间目录
mkdir src
cd src
catkin_init_workspace
cd ..
catkin_make

然后输入

cd src 
catkin_create_qt_pkg testgui
cd ..
catkin_make

qt4的command,原因,用后面古月居的文件,然后替换 工程名字

删除usr/share/qtchooser文件夹下的 

ROS Qt5 librviz人机交互界面开发一(配置QT环境) - 古月居  将功能包的cmakelist.txt进行更改  改成qt5,还要新增几个东西,所以直接复制 古月居的

导入用  新建 ros工作空间的方式  编译器选 catkin-make

工作空间所在目录不要有 空格,不然qt编译

 如 for bin这样坑人的目录,改成 forBin即可

file(GLOB_RECURSE QT_MOC RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} FOLLOW_SYMLINKS include/binControlNode/*.hpp *.h include/*.hpp *.h)
 

/usr/bin/ld: cannot find -lSupportAll   这是什么错误 ros中

QMetaObject::connectSlotsByName: No matching signal for on_Zoom_Button_clicked()

我也不知道为啥匹配不了自己手动再绑定一下啊

undefined reference to `vtable for’”问题的解决方法

因为继承的时候,没有通过界面,导致 界面少帮你更新一个文件。。QThread

vsCode调试ros节点

catkin_make -DCMAKE_EXPORT_COMPILE_COMMANDS=Yes
在CMakeLists.txt文件中设置:
set(CMAKE_BUILD_TYPE Debug)

 task.json改成如下

{
	"version": "2.0.0",
	"tasks": [
		{
			"label": "catkin_make",
			"type": "shell",
			"command": "catkin_make",
			"args": [
				"-DCMAKE_BUILD_TYPE=Debug"
			],
			"problemMatcher": [
				"$catkin-gcc"
			],
			"group": {
				"kind": "build",
				"isDefault": true
			}
		}
	]
}

cpp,可能不需要改

{
  "configurations": [
    {
      "browse": {
        "databaseFilename": "",
        "limitSymbolsToIncludedHeaders": true
      },
      "includePath": [
        "/opt/ros/melodic/include/**",
        "/usr/include/**"
      ],
      "name": "ROS",
      "cStandard": "c11",
      "cppStandard": "c++17",
      "intelliSenseMode": "clang-x64",
    }
  ],
  "version": 4
}

重点修改launch文件

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "(gdb) demo04_sub_person",
      "type": "cppdbg",
      "request": "launch",
      "program": "/home/kuka/Joe/BinPickingQT/BinPickingUI/RosTest/joe_ws/devel/lib/plumbing_pub_sub/demo04_sub_person",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${fileDirname}",
      下面都一样
n.advertise<std_msgs::String>("chatter", 1000);  

第二个参数是发布队列的大小,它的作用是缓冲。当我们发布消息很快的时候,它将能缓冲1000条信息。如果慢了的话就会覆盖前面的信息。

自己改一下高度值,重新编译

 showmaximized不能全屏显示  子控件的高度不能太大。。。

Logo

更多推荐