我试图以某种方式编译,以便exec静态链接到gcc
。我认为运行bjam link=static runtime-link=static
应该做什么?
当我尝试时,我得到以下错误:
...failed gcc.link TGT/bin/gcc-4.5.1/debug/link-static/runtime-link-static/datagen...
gcc.compile.c++ TGT/bin/gcc-4.5.1/release/link-static/runtime-link-static/base_data_gen.o
gcc.link TGT/bin/gcc-4.5.1/release/link-static/runtime-link-static/datagen
/usr/bin/ld: cannot find -lstdc++
/usr/bin/ld: cannot find -lm
/usr/bin/ld: cannot find -lc
collect2: ld returned 1 exit status
当我运行bjam link=static
时,这些不会出现。
请指教?
答案 0 :(得分:0)
我相信libstdc ++故意不是静态链接的。这样做被许多人认为是危险的(虽然我没有真正听到一个很好的理由)。我不认为你可以添加一个简单的标志。对于gcc工具集,您可以添加类似
的内容-static-libgcc -Wl,-Bstatic -lstdc++
为您的构建版本的cxxflags。