CMakeFiles示例
1、目录结构如下
2、外层CMakeLists.txt
# 声明要求的 cmake 最低版本
cmake_minimum_required(VERSION 3.16.3)
set(CMAKE_CXX_STANDARD 11)
# 声明一个 cmake 工程
project(testcjson)
# 添加include目录存放.h文件
include_directories("jsoncpp/include")
# 添加库( 库名(自己设置) 库的实现文件及路径 )
#add_library(jsoncpp jsoncpp/)
add_subdirectory(jsoncpp)
# 添加一个可执行程序,语法:add_executable( 程序名(自己设置,最后用于执行./testcjson) 源代码文件及路径 )
add_executable(testcjson testcjson.cpp)
# 将库文件链接到可执行程序上(名字都是上面设置的,统一对应即可)
target_link_libraries(testcjson jsoncpp )
set(CMAKE_C_COMPILER gcc)
set(CMAKE_CXX_COMPILER g++)
3、内层CMakeLists.txt
project(jsoncpp)
aux_source_directory(. DIR_SRCS)
add_library(jsoncpp STATIC ${DIR_SRCS})
4、在外层执行
cmake .
-- Configuring done
-- Generating done
-- Build files have been written to: /mnt/f/PersonStudy/CCStudy/testjson
make
[ 66%] Built target jsoncpp
[ 83%] Building CXX object CMakeFiles/testcjson.dir/testcjson.cpp.o
[100%] Linking CXX executable testcjson
[100%] Built target testcjson
本博客是个人工作中记录,更深层次的问题可以提供有偿技术支持。
另外建了几个QQ技术群:
2、全栈技术群:616945527
2、硬件嵌入式开发: 75764412
3、Go语言交流群:9924600
闲置域名WWW.EXAI.CN (超级人工智能)出售。
另外建了几个QQ技术群:
2、全栈技术群:616945527
2、硬件嵌入式开发: 75764412
3、Go语言交流群:9924600
闲置域名WWW.EXAI.CN (超级人工智能)出售。