cflags'-WI,-export-dynamic'与链接器标志'-export-dynamic'

时间:2012-09-29 12:17:48

标签: c cmake clang

我使用不同的编译标志编译了相同的程序(不是库),使用Clang

进行编译
  1. 使用CMAKE_C_FLAGS = -Wl,-export-dynamic
  2. 使用CMAKE_EXE_LINKER_FLAGS = -export-dynamic
  3. 但我注意到第二种方式似乎不起作用。我找不到导出的符号。我很惊讶,只有第一种方式有效。我不知道C编译器是否做了一些棘手的事情,或Clang或CMake。但是如何让第二种方式起作用呢?第一种方法会打印很多警告。

1 个答案:

答案 0 :(得分:3)

为第二种变体提供相同的选项。

  

设置(CMAKE_EXE_LINKER_FLAGS“-Wl,-export-dynamic”)

因为编译器和链接器在你的情况下是一样的。