我在我的 Mac 上使用 clang 编译了一个静态库(C++)(比如说,libmylib_DARWIN.a
对于libmylib_LINUX.a
2 个架构)(Apple LLVM version 9.0.0 (clang-900.0.39.2)
如果有任何相关性)。
目前,有两个问题:
- 静态库(使用当前构建配置)包含调试符号
它还显示用于存档的目标文件的名称
otool -Iv libmylib_DARWIN.a
Archive : libmylib_DARWIN.a libmylib_DARWIN.a(firstobjectfile.cpp.o) libmylib_DARWIN.a(secondobjectfile.cpp.o) ....
我想从这个库中删除调试符号和存档文件名。我想知道是否有一种方便的方法可以在不更改我的构建配置的情况下做到这一点。
- Mac 上会
strip
为 DARWIN 和 LINUX 构建的库执行此操作吗?还有什么我需要注意的吗? strip
似乎没有删除存档文件名
SO上有一些类似的问题;但是,我发现的那些处理 iOS、Objective C,没有谈论多平台,也没有提到存档名称。