Gcc 删除Cython中的编译参数

Gcc 删除Cython中的编译参数,gcc,cython,setuptools,Gcc,Cython,Setuptools,我想用cython编译我的python项目。 我创建了这个setup.py文件: from setuptools import setup, find_packages from Cython.Build import cythonize recursive_tree = [file for file in glob.iglob("sample/**/*.py", recursive=True)] setup( name

我想用cython编译我的python项目。 我创建了这个setup.py文件:

from setuptools import setup, find_packages
from Cython.Build import cythonize

recursive_tree = [file for file in glob.iglob("sample/**/*.py",  recursive=True)]

setup(
    name                                     = 'sample',
    version                                  = sample.__version__,
    packages                                 = find_packages(),
    author                                   = "42",
    description                              = "Cython Sample",
    include_package_data                     = True,
    ext_modules                              = cythonize(
        recursive_tree,
        nthreads=2,
        exclude="setup.py",
        build_dir = "out",
    ),
)
在这里,我们可以看到可以添加一些额外的编译参数,但是我们可以做相反的操作并删除一个吗

使用此命令时:
python setup.py build\u ext--inplace
我得到了这个gcc配置:

gcc-pthread-Wno unused result-Wsign compare-DNDEBUG-g-fwrapv-O3-Wall-Wstrict prototype-fPIC-I/usr/local/include/python3.6m-c out/sample/hello.c-o build/temp.linux-x86_64-3.6/out/sample/hello

gcc-pthread-sharedbuild/temp.linux-x86_64-3.6/out/sample/hello.o-o build/lib.linux-x86_64-3.6/hello.cpython-36m-x86_64-linux-gnu.so


如何删除
-g
选项?

关于类似的问题:(我不认为这是完全重复的)。它们通过添加额外的命令行参数来撤销默认情况下
setup.py
添加的参数,从而解决了类似的问题

在这种情况下,
-g0
。因此,将
-g0
添加到
extra\u compile\u args

setup(... # everything as before
      extra_compile_args = ['-g0'])

setup()
和cythonize中使用
extra\u compile\u args
时收到警告。使用
moduleA=Extension('moduleName',[fileToCompile],extra\u compile\u args=[-g0])时,我得到了一个很好的结果。