Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将默认编译器设置为Clang?_Python_C++_Macos_Gcc_Clang - Fatal编程技术网

Python 如何将默认编译器设置为Clang?

Python 如何将默认编译器设置为Clang?,python,c++,macos,gcc,clang,Python,C++,Macos,Gcc,Clang,我有一个Mac osx yosemite 10.10.3,最近我自己安装了gcc 5.1.0。这个决定给我带来了很多问题。尽管我随后brew卸载了gcc,但当我编写gcc--version时,我仍然得到了 gcc (GCC) 5.1.0. 事实上,它是/似乎是默认编译器,而不是clang,这在编译时造成了许多问题。有时,我可以在某些情况下通过在命令行上编写-toolset=clang来避免这些问题,但在其他情况下,例如,当我通过python setup.py install安装python模块

我有一个Mac osx yosemite 10.10.3,最近我自己安装了gcc 5.1.0。这个决定给我带来了很多问题。尽管我随后brew卸载了gcc,但当我编写gcc--version时,我仍然得到了

gcc (GCC) 5.1.0.
事实上,它是/似乎是默认编译器,而不是clang,这在编译时造成了许多问题。有时,我可以在某些情况下通过在命令行上编写-toolset=clang来避免这些问题,但在其他情况下,例如,当我通过python setup.py install安装python模块时,这似乎是不可避免的

我已尝试将以下内容添加到我的bashrc配置文件中

export CC=clang
export CXX=clang++
但是没有用

显然,我不想重新安装我的操作系统。有什么建议吗

澄清一下,这个问题的历史是这样的:当我最近试图使用boost编译一些东西时,.bjam混淆了c++11和c++98库。添加

-toolset=clang
似乎解决了这个问题。但是,当我现在通过安装特定的python模块时

python setup.py install
导入它会在python中提供以下内容:

File "<stdin>", line 1, in <module> ImportError: dlopen(somescript.so, 2):          Symbol not found: __ZTINSt8ios_base7failureB5cxx11E Referenced from: somescript.so Expected in: dynamic lookup
导入中的文件“”,第1行:dlopen(somescript.so,2):未找到符号:_zinst8ios_base7failureB5cxx11E引用自:somescript.so应在:动态查找中
标题具有误导性;GCC和Clang都是C编译器套件的竞争对手。如果您有一个对CC的调用,那么它应该转到您定义为CC值的任何C编译器。如果你调用GCC,那么它将转到GCC。这是真的,当我编写时,cc——版本Apple LLVM版本6.1.0(clang-602.0.53)。。我想我很难清楚地表达这个问题。关键是我编译时使用了错误的库…gcc的位置在哪里?为了找出答案,请使用
哪个gcc
@Jens Höpken来澄清,这个问题的历史是这样的:当我最近试图使用boost编译一些东西时,.bjam混淆了c++11和c++98库。添加
-toolset=clang
似乎可以解决这个问题。然而,当我现在通过
python setup.py install安装一个特定的python模块时,
导入它会在python中提供以下内容:<代码>文件“”,第1行,导入错误:dlopen(somescript.so,2):未找到符号:\uuuu zInst8IOS\uBase7FailureB5CXX11E引用自:somescript.so预期在:dynamic lookup^中,则您应该询问此问题!标题具有误导性;GCC和Clang都是C编译器套件的竞争对手。如果您有一个对CC的调用,那么它应该转到您定义为CC值的任何C编译器。如果你调用GCC,那么它将转到GCC。这是真的,当我编写时,cc——版本Apple LLVM版本6.1.0(clang-602.0.53)。。我想我很难清楚地表达这个问题。关键是我编译时使用了错误的库…gcc的位置在哪里?为了找出答案,请使用
哪个gcc
@Jens Höpken来澄清,这个问题的历史是这样的:当我最近试图使用boost编译一些东西时,.bjam混淆了c++11和c++98库。添加
-toolset=clang
似乎可以解决这个问题。然而,当我现在通过
python setup.py install安装一个特定的python模块时,
导入它会在python中提供以下内容:<代码>文件“”,第1行,导入错误:dlopen(somescript.so,2):未找到符号:\uuuu zInst8IOS\uBase7FailureB5CXX11E引用自:somescript.so预期在:dynamic lookup^中,则您应该询问此问题!