我有一个模块需要用 C++11 编译。在 GCC 和 Clang 上,这意味着 std=c++11
开关,或在旧编译器上的 std=c++0x
。
Python 未使用此开关进行编译,因此 Distutils 在编译模块时不包含它。
使用 distutils 编译 C++11 代码的首选方法是什么?
最佳答案
您可以使用 distutils.core.Extension
的 extra_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/