python - 如何使用 distutils 指定 C++11?

标签 python c++11 distutils

我有一个模块需要用 C++11 编译。在 GCC 和 Clang 上,这意味着 std=c++11 开关,或在旧编译器上的 std=c++0x

Python 未使用此开关进行编译,因此 Distutils 在编译模块时不包含它。

使用 distutils 编译 C++11 代码的首选方法是什么?

最佳答案

您可以使用 distutils.core.Extensionextra_compile_args 参数:

ext = Extension('foo', sources=[....],
                libraries=[....], 
                extra_compile_args=['-std=c++11'],
                ....)

请注意,这完全取决于平台。它甚至不适用于某些旧版本的 gcc 和 clang。

关于python - 如何使用 distutils 指定 C++11?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23261320/

相关文章:

c++ - 模板类内部模板类的外部类运算符

python - 将 Anaconda MKL 链接到 C++/Cython 程序

python - cxfreeze 在 vi​​rtualenv 中缺少 distutils 模块

python - 如何从文本文档中删除\x00字节

python - 使用 toPandas 时强制将 null 一致转换为 nan

c++ - 为什么我不能按原样将右值引用传递给 C++11 中的另一个函数?

python - 使用 `python setup.py develop` 安装更多文件

python - 在 PyQt 中实现首选项对话框窗口

python - Django HttpResponseRedirect,它返回 None 相反

c++ - std::vector::emplace_back 和 std::move