1

我正在使用 Clang 9.0.0 构建并与 ld.lld 链接器链接

clang++.exe -Wall -fexceptions -m64 -O3 -Xclang -flto-visibility-public-std -std=c++2a -flto=thin  -c
  I:\Cpp\hello_boost\hello_codeblocks_world\hello_codeblocks_world.cpp -o obj\release\hello_codeblocks_world.o

clang++.exe  -o bin\release\hello_codeblocks_world.exe obj\release\hello_codeblocks_world.o  -m64 -fuse-ld=lld --strip-all  

但是,与使用通常的 GCC 链接器 LD 不同,此选项(--strip-all 或 -s)无法识别

clang++: error: unsupported option '--strip-all' (or similarly with -s)

谁能建议我应该做些什么来去除符号?

(我的发布模式 hello_world.exe 大小对于 GC 是 15 kb,但对于 Clang 是 230 kB :-( 这可能会产生一些不利影响而没有任何好处)。

这不是 ld.lld 的选项吗?

谢谢

4

1 回答 1

0

您可能想使用:-Xlinker --strip-all You can use this to supply system-specific linker options that GCC does not recognize(gcc 手册) https://gcc.gnu.org/onlinedocs/gcc/Link-Options.html

于 2022-02-23T21:29:19.160 回答