我目前正在进行一个C++项目,希望使用C++11特性。在这个项目中,我使用的是用于数论的库NTL。
由于Xcode提供了方便的自动完成功能,因此我使用Xcode编写代码,并将库NTL与标志“-lntl”静态链接。
现在,我希望使用一些C++11特性。Xcode默认包含的苹果LLVM编译器支持这样的特性,但是与LLVM GCC 4.2编译器和iostream不同,使用NTL编译时无法正常工作。
因此,我使用LLVM GCC 4.2编译器,但它不支持C++11。因此,我安装了gcc48,并希望现在使Xcode使用gcc4.8编译其代码。
我该如何做?
--编辑-- 感谢所有评论,建议更改从libc++到stdlibc++(GNU libc++),这解决了NTL无法与Clang编译的问题。
现在,我希望使用一些C++11特性。Xcode默认包含的苹果LLVM编译器支持这样的特性,但是与LLVM GCC 4.2编译器和iostream不同,使用NTL编译时无法正常工作。
因此,我使用LLVM GCC 4.2编译器,但它不支持C++11。因此,我安装了gcc48,并希望现在使Xcode使用gcc4.8编译其代码。
我该如何做?
--编辑-- 感谢所有评论,建议更改从libc++到stdlibc++(GNU libc++),这解决了NTL无法与Clang编译的问题。
stdlibc++
和clang的libc++
不兼容,如果同时使用它们,像std::iostream
这样的东西就无法工作。 - XymostechClang
编译时,完全可以使用GNUstdlibc++
进行编译 - 二进制兼容性是您想要的主要原因。 - marko