Ich verwende Cython, um kompilierte .so-Dateien für ein paar Python-Module zu generieren, die ich habe. Wie outlined in the Cython documentation können Sie eine setup.py-Datei erstellen, wie folgt:Wie kann ich Python Distutils verwenden, um ein Erweiterungsmodul mit einer anderen Architektur zu kompilieren?
from distutils.core import setup
from Cython.Build import cythonize
setup(
ext_modules = cythonize([
'MyModule1.py',
'MyModule2.py',
'MyModule3.py'
])
)
und dann bauen die Module mit dem python3 setup.py build_ext --inplace
Befehl.
Das funktioniert gut, aber es erstellt Binärdateien, die die Architektur der Host-Maschine (in meinem Fall x86_64) übereinstimmen. Ich möchte eine andere Architektur (armv7l) anvisieren, deren Kreuzkompilierung und Umgebung ich bereits habe. Ist es möglich, dies mit Python Distutils zu tun?
Ich denke, Ihre beste Wette ist es, eine virtuelle Maschine mit emulierten Architektur zu betreiben und alle Werkzeuge nativ verfügbar zu haben. – phd