catkin_make 编译不出来可执行文件 、make编译不出来可执行文件

博客讲述了作者在Ubuntu 16上使用VSCode进行ROS开发时,由于未设置自动保存,导致代码未被保存,进而使得编译未能生成可执行文件。作者在排查过程中误以为是ROS安装问题,最后发现并解决了VSCode的自动保存设置,从而成功编译。文章强调了注意细节和避免想当然的重要性。
摘要由CSDN通过智能技术生成

由于刚刚在新装的ubuntu16上装的vscode,vscode默认是没有自动保存的,我按照一般建立工作空间的流程,建立了ros工作空间,并正常将以前程序进行编译,竟然没有编译出可执行文件,经过各种折腾,最后发现竟然是没有保存代码的缘故。

后记:这种错误极其低级,其实在vscode文件图标上有一个类似泡泡形状的提示,里面英语内容大概说“没有保存”,没有仔细看,而是去怀疑刚刚装的ros少装了包,又回去装了一些别人说好用的工具,具体怎么好用,并未深究,但是依然没有解决问题,最后仔细看那个泡泡提示后,在设置里将vscode设置为自动保存,系统开始自动保存,之后OK,可以编译出可执行文件了。

注意细节提示,静心,不能想当然,少走弯路。其实这种未保存,没编译出来的事很久之前遇到过,只是这次换了地方,自动保存需要自己设置,IDE并不默认自动保存。

catkin是一个为ROS(机器人操作系统)设计定制的编译系统。catkin系统的目的是为了使开发人员更高效地构建ROS包,解决ROS中依赖项管理、构建文件管理、可重用二进制文件等问题。catkin_makecatkin的一个命令行工具,用于编译和构建ROS包。 catkin主要有三个概念:包、工作区和catkin。包是ROS中的基本单元,它包含必要的文件和代码来实现某些功能。工作区是一个包含多个包的目录。catkin是一组工具和代码库,用于构建和维护ROS代码库。 catkin_make是一个可用于构建catkin工作区的命令行工具。这个工具可以在ROS包的顶级目录下运行,使得它扫描工作区目录树,构建包中的可执行文件、库和测试等,方便用户管理ROS软件包之间的依赖关系。catkin_make插件还可以自动处理C++库的依赖关系,方便项目管理者在不同的项目之间共享可重用的代码,并在需要时更改依赖库的版本。 在使用catkin_make之前,使用catkin_init_workspace命令创建工作区目录。这个命令会在当前目录下创建一个“catkin_ws”目录,该目录是工作区的根目录。使用catkin_create_pkg命令在这个目录中创建一个ROS包,该命令会自动创建catkin包的基本文件结构。在包中添加源文件、配置文件、启动文件等后,修改CMakeLists.txt文件来配置包的编译选项,包括编译类型、编译输出路径、编译源文件所需的库等。 总之,catkin是ROS中的编译系统,catkin_makecatkin工具集的一部分,可以用来编译ROS软件包。catkin提供了一些工具和代码库,用于构建和维护ROS代码库,并使得能够轻松地管理ROS软件包之间的依赖关系。在使用catkin_make之前,需要创建ROS工作区,并使用catkin_create_pkg命令创建ROS包,然后对包的CMakeLists.txt文件进行配置,使用catkin_make进行编译和构建。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值