CMake常用命令笔记

判断当前是32位还是64位

if(CMAKE_SIZEOF_VOID_P EQUAL 8)

    ......

elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)

    ......

endif()

添加库文件

target_link_libraries(YourProjectName
    PRIVATE YourLibraryName
)

添加库文件目录(示例)

target_link_directories(YourProjectName
    PRIVATE "C:/Program Files (x86)/MVS/Development/Libraries/win64"
)

添加include文件目录

target_include_directories(YourProjectName
    PRIVATE YourIncludeDirectory
)

判断Debug/Release

if(CMAKE_BUILD_TYPE MATCHES "Debug")
    ......
elseif(CMAKE_BUILD_TYPE MATCHES "Release")
    ......
else()
    ......
endif()

编译完成后拷贝文件到指定目录(示例)

set(COPY_DLL_TARGET_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../IntegrationConfTool/lib/x64")
set(COPY_HEADER_TARGET_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../IntegrationConfTool/include")
add_custom_command(TARGET IntergrationConfDll POST_BUILD
    COMMAND ${CMAKE_COMMAND} -E make_directory ${COPY_DLL_TARGET_DIR}
    COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/IntergrationConfDll.lib" ${COPY_DLL_TARGET_DIR}
    COMMAND ${CMAKE_COMMAND} -E make_directory ${COPY_HEADER_TARGET_DIR}
    COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_SOURCE_DIR}/intergrationconfdll.h" ${COPY_HEADER_TARGET_DIR}
    COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_SOURCE_DIR}/IntergrationConfDll_global.h" ${COPY_HEADER_TARGET_DIR}
)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值