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

相关推荐
C++ 老炮儿的技术栈3 小时前
在C++ 程序中调用被 C编译器编译后的函数,为什么要加 extern “C”声明?
c语言·c++·windows·git·vscode·visual studio
pVPkTAeVGPdZ5 小时前
码垛机器人分析与仿真:基于Matlab Simulink Simscape的探索
windows
一点事6 小时前
windows:安装rabbitMQ
windows·rabbitmq·ruby
SunkingYang6 小时前
Windows系统怎么修改系统文件如user32.dll的控制权限(无法保存对xxx权限所做的更改,拒绝访问,怎么处理)
windows·系统文件·控制权限修改·无法保存·拒绝访问
yaoxin5211236 小时前
296. Java Stream API - 二元操作符与“单位元“
java·服务器·windows
用什么都重名8 小时前
Conda 虚拟环境安装配置路径详解
windows·python·conda
万行10 小时前
企业级前后端认证方式
前端·windows
cws20040111 小时前
MFA双因素用户使用手册
运维·windows·网络安全·github·邮件·邮箱
少控科技11 小时前
QT新手日记028 QT-QML所有类型
开发语言·qt
billy_gisboy12 小时前
01-Windows+DockerDesktop部署ClickHouse
windows·clickhouse