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

相关推荐
Mr.Q6 小时前
Qt多边形填充/不填充绘制
qt
弗锐土豆7 小时前
Windows系统中Oracle VM VirtualBox的安装
windows·虚拟机·virtualbox
秋の花7 小时前
【JAVA基础】Java集合基础
java·开发语言·windows
可峰科技7 小时前
斗破QT编程入门系列之二:认识Qt:编写一个HelloWorld程序(四星斗师)
开发语言·qt
7年老菜鸡9 小时前
策略模式(C++)三分钟读懂
c++·qt·策略模式
零意@9 小时前
ubuntu切换不同版本的python
windows·python·ubuntu
写bug的小屁孩11 小时前
前后端交互接口(三)
运维·服务器·数据库·windows·用户界面·qt6.3
huanggang98212 小时前
在Ubuntu22.04上使用Qt Creator开发ROS2项目
qt·ros2
老秦包你会13 小时前
Qt第三课 ----------容器类控件
开发语言·qt
hairenjing112313 小时前
在 Android 手机上从SD 卡恢复数据的 6 个有效应用程序
android·人工智能·windows·macos·智能手机