c++/cmake/cmakelists/cmakelists子目录的添加

本文介绍了如何在C++项目中使用CMakeLists文件来管理子目录,确保编译和链接多个源文件的正确性。通过CMakeLists的add_subdirectory命令,可以将项目分解为模块,每个模块都有自己的CMakeLists.txt,从而实现项目的结构化和可维护性。
摘要由CSDN通过智能技术生成
cmake_minimum_required(VERSION 3.10)

project(learning_to_create_project)

set(CMAKE_CXX_STANDARD 11)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

find_package(OpenCV REQUIRED)

include_directories(
        ${PROJECT_SOURCE_DIR}/include/)

add_library(${PROJECT_NAME} SHARED
        src/China.cpp
        src/i.cpp
        src/love.cpp
)

add_executable(i_love_China example/i_love_China.cpp)
target_link_libraries(i_love_China
        ${OpenCV_LIBS}
        ${PROJECT_NAME}

cmake_minimum_required(VERSION 2.8):cmake版本要求;

set(CMAKE_CXX_STANDARD 11):设置C++标准为C++11;

set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib):设置库文件输出到代码源路径下的lib文件夹中;

find_package:找到OpenCV的库,REQUIRED表示一定要找到这个库,找不到这个库,编译就直接结束,不再往下进行了;(这里只是示范写法,实际上没有用到OpenCV);

include_directories:用于包含头文件,需要指明头文件所在的目录,如果前面使用了find_package(x)去查找到了某一个库,那么就可以使用这个命令去包含这个库的头文件,例如:includ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值