cmakelists.txt为什么这么写,为什么有这些,能不能推导出来,而不是死记。所以 gcc g++ make makefile cmake cmakelists catkin 本质都是一个东西

2023-05-16

cmakelists为什么这么写,为什么有这些,能不能推导出来,而不是死记。

为什么添加话题也要在这里面写?

名称

要找链接库。

要生成可执行文件

这几个是好理解的。

package.xml里面写的编译依赖  运行依赖需要和 cmakelists.txt里面的相对应么。

看了这篇了解makefile的本质之后可能就好些

https://blog.csdn.net/sinat_16643223/article/details/119981757

 14:09:01
感觉还是makefile本质清晰

 14:09:16
比cmakelists简洁多了

 这样再推cmakelists就好些了。

cmakelists最后也是要生成makefile,所以最后的本质都是去链接一些文件生成可执行文件。

本质还是gcc g++那些语句

所以  gcc  g++  make  makefile  cmake  cmakelists  catkin_make  本质都是一个东西!!!!!!!!!

你之前在Ubuntu上弄TCP UDP编程的时候是自己亲自弄过g++的对吧,把cpp文件生成可执行文件。

cmakelists那么多东西不本质还是为了找到那些文件然后链接起来么,只不过换个方式表达。

为什么ROS功能包的cmakelists里面要单独写话题,因为这些自定义话题也是需要编译的,就是那些msg文件,需要编译的,生成h文件等等的,可能他们和cpp文件的编译有些区别所以单独拿出来写,我个人这么推测的。

可能找不同库的方式不一样所以写起来的语句也不一样,总之,最优要编译成功,肯定要把该有的库都链接起来的。都得在cmakelists里面写出来的。你清楚本质之后应该可以很明确这一点。

就不光知其然而知其所以然,就不用死记死背那些规则了。

所以你再自己写功能包的时候,自己用了哪些第三方库自己心里要有数,并且到cmakelists里面去添加。就是这么个道理。

现在看这个思路就比较清晰

https://gitee.com/maxibooksiyi/gpst265fusion/blob/master/src/global_fusion/CMakeLists.txt

上面的这个cmakelists结合下面这篇博文看看好很多

https://blog.csdn.net/sinat_16643223/article/details/114029013

什么STL  opencv  boost都是常用的库,这些库都需要会链接

还要会链接其他功能包,其他的库等等的。

我看下这个所用第三方库的cpp的内容,里面都没有main函数

https://gitee.com/maxibooksiyi/gpst265fusion/tree/master/src/global_fusion/ThirdParty/GeographicLib/src

 首先我觉得可以明确,第三方库,不管你是什么乱七八糟的库,还是什么Lib库,应该都是cpp和头文件组成的。首先明确这个本质,不然总是感觉他们很神秘一样。

windows里面用那些IDE要配置环境变量一个道理不然找不到那些库,现在清楚一个C++程序的本质之后很多东西就好理解。以前只知道机械地按照教程添加那些路径,死记,不知道为什么。

现在,你程序里面用了opencv库,那么你编译的时候得让你的程序找得到那个opencv,现在再去看windows下配置opencv的那些是不是好理解些了,不用死记了

windows下的visual studio就有编辑链接库的选项,现在应该明白是什么意思了吧是不是,以前只知道照着教程弄。

下面拍自《opencv4 快速入门》  P9

现在让你去windows上弄opencv,配置环境啥的我觉得你应该不会害怕了对吧。

包括我现在叫你去写一个STM32的工程代码,你现在不应该说死记一个工程目录是有哪些。而是用了哪些库调用了哪些库就有哪些,而不是死记了。

还有程序怎么链接不同版本的opencv  (《视觉SLAM十四讲》里面有讲)

不同版本的Python等等。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

cmakelists.txt为什么这么写,为什么有这些,能不能推导出来,而不是死记。所以 gcc g++ make makefile cmake cmakelists catkin 本质都是一个东西 的相关文章

随机推荐