在 OSX 10.9 中,clang++ 的默认 -stdlib
选项是 libc++
,所以这就是 Macport 在构建包时使用的选项。
有没有办法告诉 Macports 使用 libstdc++
来代替?
特别是我想通过 Macports 构建 OpenCV,所以它使用 libstdc++
,但我想我也会遇到对其他包这样做的需要
最佳答案
选项很简单:-stdlib=libstdc++
如果您需要更好地控制各种端口的构建过程,您始终可以设置如下变量:
CXX = "clang -std=c++11 -stdlib=libc++
, CXXFLAGS = "-Wall -O2 -march=core2"
等
并构建<port>
来自来源:
sudo port -s install <port> -universal \
configure.cc="${CC}" configure.cxx="${CXX}" \
configure.cflags="${CFLAGS}" configure.cxxflags="${CXXFLAGS}"
另一种选择是安装 gcc48
(或以上)端口,并将其用作编译器。不要使用旧版 Xcode 安装的旧 gcc-4.2.1。这是垃圾。
关于c++ - OSX 10.9 上的 Macports - 使用 -stdlib=libstdc++ 编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21546810/