标签:文件 catkin vscode 开始 make 学习 Python cpp ROS
**菜鸡错误之路**
程序写完之后要改的东西
CMakelist.txt文件
add_executable(hello_vscode_c src/hello_vscode_c.cpp)
修改两处
- src/后面的文件名字,要对应着你写的cpp的文件名字。
- 前面的映射文件名字(我随便叫的,哈哈),反正后面执行程序就不用输那一堆cpp文件的名字,直输入的就是你命名的那个名字。
target_link_libraries(hello_vscode_c
${catkin_LIBRARIES}
)
这里改的也就是和你上面起的那个名字对应就OK了。
Python文件写完之后要进行两步工作
- 赋予Python 文件可执行权限
chmod +x 你Python文件的名字
- CMakeList文件中将下面代码注释取消,并将scripts中的.py文件改为你文件的名字。
catkin_install_python(PROGRAMS
scripts/hello_vscode_p.py
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
Ros创建简单的cpp文件编译不通过
出现的问题如下图所示
通过将CmakeList.txt文件中的std_msg更改为std_msgs后编译成功。
Ros创建Python文件遇到问题
在用Python写的时候也报了错误
解决办法就是ennnnn,下面的方法
在Python文件前面加上下面这两句,顺序不能错。
#!/usr/bin/env python
#-*- coding: UTF-8 -*-
vocode的使用方法,赞!
参考的是这个网站的教学,我也是跟着学习记录一下。
http://www.autolabor.com.cn/book/ROSTutorials/chapter1/14-ros-ji-cheng-kai-fa-huan-jing-da-jian/142-an-zhuang-vscode.html
vocodecatkin_make:build 配置
进入vscode之后,按Ctrl shift B 点击:catkin_make:build后面的小齿轮,将下方的代码复制进去。
{
// 有关 tasks.json 格式的文档,请参见
// https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"label": "catkin_make:debug", //代表提示的描述性信息
"type": "shell", //可以选择shell或者process,如果是shell代码是在shell里面运行一个命令,如果是process代表作为一个进程来运行
"command": "catkin_make",//这个是我们需要运行的命令
"args": [],//如果需要在命令后面加一些后缀,可以写在这里,比如-DCATKIN_WHITELIST_PACKAGES=“pac1;pac2”
"group": {"kind":"build","isDefault":true},
"presentation": {
"reveal": "always"//可选always或者silence,代表是否输出信息
},
"problemMatcher": "$msCompile"
}
]
}
vscode的代码提示功能
要在vocode项目下的c_cpp_properties.json文件中配置
"name": "ROS",
"intelliSenseMode": "gcc-x64",
"compilerPath": "/usr/bin/gcc",
"cStandard": "gnu11",
"cppStandard": "c++17"
改的地方只有最后一个,将最后一项改为 cppStandard:“c++17”
vscode 打印中文乱码
在c程序的前面加上这两句话的其中一句就OK了。
setlocale(LC_CTYPE, "zh_CN.utf8");
setlocale(LC_ALL, "");
标签:文件,catkin,vscode,开始,make,学习,Python,cpp,ROS 来源: https://blog.csdn.net/qq_41679472/article/details/121454804
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。