完整的最小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!

相关推荐
luoyayun36111 分钟前
Qt/QML + FFmpeg 实现多音频文件顺序拼接功能
qt·ffmpeg·音频拼接
xcLeigh40 分钟前
鸿蒙平台 KeePass 密码管理器适配实战:从 Windows 到 鸿蒙PC 的 Electron 迁移指南
windows·electron·web·harmonyos·加密算法·keepass
Strugglingler2 小时前
【Qt,OpenGL, RHI,Wayland 等概念梳理】
qt·opengl·wayland·rhi·x11·egl·glx
caimouse3 小时前
Reactos 第 9 章 设备驱动 — 9.1 Windows的设备驱动框架
windows
宸丶一4 小时前
Day 10:LangGraph - Agent 的图执行引擎
java·windows·python
ylscode4 小时前
GreatXML BitLocker绕过漏洞深度解析:Windows Defender离线扫描如何被改造成本地提权后门
windows·安全
caimouse5 小时前
Reactos 第 8 章 结构化异常处理 — 8.1 结构化异常处理的程序框架
windows
caimouse6 小时前
Reactos 第 7 章 视窗报文 — 7.1 视窗线程与 Win32k 扩充系统调用
windows
小短腿的代码世界6 小时前
Qt对象树析构链与智能指针协同:零泄漏内存管理架构
开发语言·qt·架构
小庞在加油6 小时前
从qmake到CMake+VSCode:Qt项目现代化迁移与AI提效实战指南
vscode·qt·ai·ai工具