CMake生成的动态库和静态库名称一致

本文详细介绍了使用CMake进行项目构建的过程,包括设置最低版本要求、定义项目、创建静态库和共享库,以及链接可执行文件的具体步骤。

cmake_minimum_required(VERSION    3.5    FATAL_ERROR)

project(recipe-04    LANGUAGES    CXX)

add_library(message-objs
    OBJECT
    Message.cpp
    Message.hpp

)
set_target_properties(message-objs
    PROPERTIES
    POSITION_INDEPENDENT_CODE 1
)
add_library(message-shared
        SHARED
                $<TARGET_OBJECTS:message-objs>
        )
set_target_properties(message-shared
        PROPERTIES
                OUTPUT_NAME    "message"
        )
add_library(message-static
        STATIC
                $<TARGET_OBJECTS:message-objs>
        )
set_target_properties(message-static
        PROPERTIES
                OUTPUT_NAME    "message"
        )
add_executable(hello-world hello-world.cpp)
target_link_libraries(hello-world message-static)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值