Cmake 自学笔记(linux)(四)
来源:互联网 发布:vue.js nexttick用法 编辑:程序博客网 时间:2024/06/06 02:54
前言:观察文件夹下的文件,发现源代码(main .h .c)放在同一个路径下,还是不太正规,怎么办呢?分开放呗…….(当然,分开的这个过程由我们自己完成)
我们期望的结构:
即main.c在src下(src=source code),头文件和他的.c在库文件夹下。并且我们发现cmakelists多达三个,都需要我们去自己写,但是并不困难。
1.在主文件夹下新建src,libhello,build三个文件夹,以及一个顶层cmakelists.txt.然后在src中新建一个main和一个cmakelists,在libhello中新建一个hello.c和一个hello.h,还有一个cmakelists。
2.修改顶层cmakelists的内容
说明:使用 add_subdirectory 告诉cmake去子目录寻找新的CMakeList.txt 子文件,括号中的内容就是子cmakelists所在的文件夹
3.修改src中的cmakelists的内容:
说明:include_directories,用来指明头文件所在的路径。注意,PROJECT_SOURCE_DIR必须大写。另外,说下我个人对./的理解,./我理解为该cmakelists文件所在的当前路径,而不是这个项目的根目录。而项目的根目录是${PROJECT_SOURCE_DIR}.
4.修改libhello中的cmakelists的内容:
很简单,就是一个添加库的命令。
5.全部完成后,在build文件夹下运行cmake.. ,然后运行make,此时注意生成的可执行文件不再是在build下,而是在build里面的src中。因为build中的目录默认和源代码中结构一样,源码中的目录是src和libhello,所以在build中生成了src和libhello。
- Cmake 自学笔记(linux)(四)
- Cmake 自学笔记(linux)(一)
- Cmake 自学笔记(linux)(二)
- Cmake 自学笔记(linux)(三)
- Cmake 自学笔记(linux)(五)
- Cmake 自学笔记(linux)(六)
- Linux自学笔记(四)注意事项
- ajax自学笔记(四)
- YII自学笔记(四)
- SpringBoot自学笔记(四)
- QT自学笔记(四)
- cmake 学习笔记(四)
- 自学linux从零开始(自学笔记①)
- 自学Linux从零开始(自学笔记③)
- 自学PHP的笔记(四)埋个雷
- Python自学笔记(四)函数
- Hadoop自学笔记(四)安装Hadoop
- HTML自学笔记(四)
- PL/SQL
- Codeforces 711C 树DP 解题报告
- c的多种用法
- instcat.sql sqlserver数据链路 sqlserver2008连接2000报错
- 08打开r40m平台Android6.0下的TF卡(分色排版)
- Cmake 自学笔记(linux)(四)
- 数组的定义及初始化
- tomcat学习之四:tomcat的类加载机制
- ST17H26对接RC522读IC卡
- Equinix成为“康普新托管数据中心联盟”的首个成员
- Android简介
- MAC下通过XAMPP和PHPStorm配置PHP开发环境
- bzoj 3384(dp)
- 从事大数据工作的朋友 你拥有几个大数据证书?