Jon*_*nny 5 c++ macos linker symbols shared-libraries
我想在 OS X 下使用 GCC 从多个静态库创建一个共享库。
在某些静态库中,共享库中没有代码调用它,我只想导出这些静态库中的符号。这在调试模式下有效,但在发布模式下无效(特别是当我启用死代码条带化时)。我可以理解原因,gcc 认为静态库上的这些函数从未使用过。但我怎样才能强制 gcc 包含这些符号呢?
我已经尝试为加载程序添加 -u 选项,但它只生成一个“本地”符号。如何使链接器生成导出符号?
另外,我想知道是否有一种方法可以在源代码中添加链接器指令,就像 MSVC 一样#pragrma comment(linker, "/INCLUDE:xxxx")
我在静态库中定义的函数如下:
extern "C"
void test() {}
Run Code Online (Sandbox Code Playgroud)
提前致谢!-乔尼
| 归档时间: |
|
| 查看次数: |
4885 次 |
| 最近记录: |