我遇到了一个奇怪的问题,我需要同时使用gcc和铛专用模块访问Boost库(这些程序进行交互,一个是GCC / G ++排斥的,一个是铛独家)。 有没有什么办法来建立升压,使两个模块调用的刺激时,访问相同的位置,但提升能够促进海湾合作委员会或铿锵的具体要求?
Answer 1:
这是可能的,但它是有问题的,如果你真的应该这样做。
你将不得不选择要么使用libc++
或libstdc++
有两种编译器。
libstdc++
绝对是最好的一个,因为铛可以对付它准确无误,GCC有分析几个问题libc++
头。
这样的事情应该让铛使用gcc的libstdc++
在Mac OS X.
clang++ \
-stdlib=libstdc++ \
-nostdinc++ \
-Qunused-arguments \
-nodefaultlibs \
<path to>x86_64-apple-darwin14/lib/libstdc++.a \
<path to>x86_64-apple-darwin14/lib/libsupc++.a \
<path to>lib/gcc/x86_64-apple-darwin14/5.2.0/libgcc.a \
<path to>lib/gcc/x86_64-apple-darwin14/5.2.0/libgcc_eh.a \
-lc \
-Wl,-no_compact_unwind \
-cxx-isystem <path to>x86_64-apple-darwin14/include/c++/5.2.0 \
-cxx-isystem <path to>x86_64-apple-darwin14/include/c++/5.2.0/x86_64-apple-darwin14 \
-mmacosx-version-min=10.7.0
我建议把这个包装脚本,然后通过CXX=clang++-libstdc++
与升压构建脚本。
例如包装脚本:
#!/bin/sh
ls -l "$@"
裹LS。
文章来源: Is it possible to build boost with clang and gcc support?