Visual Studio 2017现在随附clang,我想知道是否可以将clang设置为尝试通过Cython安装具有pip install依赖关系的python软件包时使用的默认编译器。

据我所知,问题似乎是pip不知道在哪里寻找clang。它默认为包含MSVC编译器的路径,以编译在.c包中指定的setup.py文件。有什么办法我可以1)设置要使用的编译器的路径,或者2)指定应显式使用clang

我正在使用Anaconda发行版和Python 3.6在Windows 10上工作。任何帮助将非常感激!

最佳答案

不要做。

可以通过设置编译器在命令行上完成:
python setup.py build_ext -c <compiler>python setup.py build_ext --help-compiler查看可用选项。

但是,用于构建python发行版的同一编译器必须对所有扩展都使用,因为扩展模块将由解释器加载。

如果它们是由其他编译器构建的,则无法通过python解释器安全地加载

对于Anaconda,其python发行版是使用MSVC构建的,因此应使用anaconda环境使用的相同编译器进行扩展。在那种情况下,激活anaconda环境就足够了,尽管可以像上面那样显式设置编译器。

参见Windows Compilers python wiki entry

10-02 02:14
查看更多