sagen, dass ich ein einfaches Paket der folgenden Struktur:Gibt es eine saubere Möglichkeit, Compiler-Warnungen von Cython zu unterdrücken, wenn Sie piximport.install verwenden?
cython_functions/
__init__.py
fib.pyx
wo fib.pyx
enthält:
def fib(int n):
fiblist = [0, 1]
a, b = fiblist
while b < n:
a, b = b, a + b
fiblist.append(b)
return fiblist
und __init__.py
enthält:
import pyximport
pyximport.install()
from cython_functions.fib import fib
Wenn ich irgendwelche Änderungen an fib.pyx
ich machen bekomme eine ganze Reihe von Compiler-Warnungen, wenn ich versuche, das Paket zu importieren:
/Users/andfranklin/.pyxbld/temp.macosx-10.6-intel-3.5/pyrex/cython_functions/fib.c:1687:28: warning: unused function '__Pyx_PyObject_AsString' [-Wunused-function]
static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {
^
/Users/andfranklin/.pyxbld/temp.macosx-10.6-intel-3.5/pyrex/cython_functions/fib.c:1684:32: warning: unused function '__Pyx_PyUnicode_FromString' [-Wunused-function]
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
^
.
.
.
Gibt es eine einfache Möglichkeit, sie zu unterdrücken? In another questions beschreiben sie, wie Compiler-Flags über eine .pyxbld
-Datei übergeben werden. Es ist möglich, für mich fib.pyxbld
mit folgendem Inhalt zu erstellen:
def make_ext(modname, pyxfilename):
from distutils.extension import Extension
return Extension(name=modname,
sources=[pyxfilename],
extra_compile_args=['-w'])
Ich möchte, dies vermeiden. Wenn ich mehr Funktionen erstellen muss, muss ich auch mehr .pyxbld
Dateien mit dem gleichen Muster erstellen. Dies scheint übertrieben und unpythonisch.