CMake 中 Clang++ 的“-rdynamic”选项的等价物是什么?

SMS*_*SQO 3 c++ cmake llvm clang++ cmakelists-options

我正在尝试通过阅读 LLVM 文档来创建一种新的编程语言。其中一个文档是关于“Kaleidscope”的,这是一种玩具编程语言。(教程在这里: https: //releases.llvm.org/9.0.0/docs/tutorial/LangImpl01.html)。

教程中的所有代码都写在一个文件中,可以通过以下命令进行编译:

clang++ -g -O3 toy.cpp -I/usr/lib/llvm-10/include -std=c++14  \
-fno-exceptions -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS \
-L/usr/lib/llvm-10/lib \
-rdynamic \
-lLLVM-10 -o toy
Run Code Online (Sandbox Code Playgroud)

但是,我想通过 CMake 管理我的项目。CMakeLists.txt除了选项“-rdynamic”之外,我已将上面的大部分命令翻译成一个文件(随后附加)。有谁知道如何将此选项添加到我的CMakeLists.txt?提前致谢!

SET(CMAKE_CXX_COMPILER "/usr/bin/clang++")
INCLUDE_DIRECTORIES("/usr/lib/llvm-10/include")
LINK_DIRECTORIES("/usr/lib/llvm-10/lib")

SET(_GNU_SOURCE 1)
SET(__STDC_CONSTANT_MACROS 1)
SET(__STDC_FORMAT_MACROS 1)
SET(__STDC_LIMIT_MACROS 1)

# Project configuration
# omit something unrelated

FIND_PACKAGE(LLVM REQUIRED CONFIG)
TARGET_LINK_LIBRARIES(compiler LLVM-10)
Run Code Online (Sandbox Code Playgroud)

ili*_*iis 5

干净的方法是设置ENABLE_EXPORTS属性:

set_property(TARGET compiler PROPERTY ENABLE_EXPORTS ON)
Run Code Online (Sandbox Code Playgroud)