【问题标题】:CLion Build Configuration: How do I set LDFLAGS?CLion 构建配置:如何设置 LDFLAGS?
【发布时间】:2017-11-23 19:51:31
【问题描述】:

我想设置CCCXXLDFLAGS。我通常通过命令行编译和运行这个项目,但我想使用 IDE 进行开发,所以我现在尝试使用 CLion。在首选项菜单的“构建、执行和部署”中,我使用 CMake 选项传递了 CC 和 CXX 变量,如附图所示。但是,我不确定如何设置LDFLAGS(链接器有多个 cmake 选项)。如果这是我的LDFLAGS,我将如何通过它们?我不想修改 CMakeLists.txt 文件,因为这些值并非对所有系统都通用...

-L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib

【问题讨论】:

    标签: c++ cmake clion


    【解决方案1】:

    您需要为您的项目编辑CMakeLists.txt 文件。您可以在项目资源管理器中找到它,位于项目的根级别。

    为了更改链接器标志,您有多种选择。

    要为项目中的所有目标设置全局链接器标志,您可以设置以下选项之一:

    set(CMAKE_EXE_LINKER_FLAGS "xxx")
    set(CMAKE_EXE_LINKER_FLAGS_DEBUG "xxx")     
    set(CMAKE_EXE_LINKER_FLAGS_RELEASE "<your flags here>") 
    

    如果您想为一个目标设置链接器标志,那么您可以使用set_target_properties

    set_target_properties(my_target PROPERTIES LINK_FLAGS "<your flags here>")
    set_target_properties(my_target PROPERTIES LINK_FLAGS_DEBUG "<your flags here>")
    set_target_properties(my_target PROPERTIES LINK_FLAGS_RELEASE "<your flags here>")
    

    This link 介绍了如何在 CLion 中使用 cmake。

    还要注意_DEBUG_RELEASE 不是唯一的配置类型,还有_MINSIZEREL_RELWITHDEBINFO

    【讨论】:

    • 变量 CMAKE_*_LINKER_FLAGS* 也可以传递给 cmake(通过 -D 选项)。因此,无需为此更改CMakeLists.txt
    • 那么我会通过以下内容吗? -DCMAKE_EXE_LINKER_FLAGS_RELEASE=-L/usr/local/opt/llvm/lib -DCMAKE_EXE_LINKER_FLAGS_RELEASE=-Wl,-rpath,/usr/local/opt/llvm/lib
    • 如果它只是暂时的,是的,如果它是你想要永久的东西,那么我建议编辑你的 cmakelists
    猜你喜欢
    • 2020-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-29
    • 2018-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多