完整的最小cmakelist.txt

完整的最小cmakelist.txt

复制代码
cmake_minimum_required (VERSION 3.8)					# cmake版本最低要求
set(PROJECT_DIR "/home/hhl/code/cmake/test/src")		# 设置这个项目放在哪个目录
project ("test")										# 项目名称

include_directories (${PROJECT_DIR}/include)			# 附加头文件目录
link_directories(${PROJECT_DIR}/lib)					# 附加库路径
aux_source_directory(${PROJECT_DIR}/src SRC_LIST)		# 设置./src为源文件路径
add_executable (main ${SRC_LIST})						# 寻找源文件进行编译

target_link_libraries(main libadd.a)					# 编译时需要链接的库

一,

复制代码
只是为项目使用头文件做准备
 include_directories (${PROJECT_DIR}/include)			# 设置头文件所在文件夹路径
 
我一会儿要使用这个文件夹
#include"xxx_.h"

这句话只是为链接静态库做准备
link_directories(${PROJECT_DIR}/lib)					# 设置静态库路径

二,

复制代码
这里最为核心(core),实际起作用
target_link_libraries(main libadd.lib)					# 编译时需要链接的库

两句话等价于
target_link_libraries(main ${PROJECT_DIR}/lib/ libadd.lib)

最后把动态库libadd.dll扔到.exe所在文件夹

最后把动态库libadd.dll扔到.exe所在文件夹,一定要记得,ok!

相关推荐
Wang's Blog5 小时前
Java 项目实战: 交友项目 - 黑名单:取消黑名单
java·windows·交友
可爱系程序猿8 小时前
佳能 PIXMA G4770 驱动安装后扫描不到?Windows 11 下分别检查打印与扫描组件
windows·程序人生·电脑
Misnice10 小时前
Python 的数据类型
java·windows·python
布莱克60512 小时前
QtWidgets 与 QML:两大 UI 开发框架的全面对比
开发语言·c++·qt·ui·架构
qq_4017004114 小时前
Qt 实时大数据量存储:自己动手实现 TDMS 读写
数据库·qt
NiceBlueChai14 小时前
Qt 跨线程传递多容器嵌套结构:一次 Release 实测
开发语言·qt
扶尔魔ocy14 小时前
【QT android】模仿行车记录仪案例
android·qt
2601_9623649714 小时前
Windows Hello 人脸解锁,指纹和红外摄像头哪个更安全?
windows·安全
纪念 22915 小时前
C++ list讲解
c++·windows·list
半拉老头17 小时前
用360安全浏览器插件图片助手批量下载图片
windows