ver*_*hit 4 c++ linker gcc bazel mold
Mold是最新的现代高速链接器,我想ld在编译我们的重型 C++ 存储库时使用它来替换默认链接器。
我使用Bazel + GCC 10.2来编译,mold docs提供了gcc -B/mold/path解决方案。但是我没有找到一种方法将此 CLI 选项传递给 bazel。
我尝试过bazel build --linkopt=-B/usr/local/libexec/mold //src:XXX或--copt=-B/usr/local/libexec/mold,但两者都不起作用,bazel仍然使用旧的链接器。
我可以确保我的系统上已经安装了mold,因为我可以通过mold直接运行来编译c++ helloworld程序链接g++ -B/usr/local/libexec/mold。
尝试--linkopt=-fuse-ld=bfd --linkopt=-B/usr/local/libexec/mold --sandbox_block_path=/usr/bin/ld.bfd。
(Bazel 知道一些链接器,例如 GNU gold 和 lld。如果它检测到它们,它会明确告诉编译驱动程序使用它们,这会绕过ld中的模具/usr/local/libexec/mold。)