Ich habe ein Python-Modul, das eine externe Binärdatei aufruft, die aus C-Quelle erstellt wurde.
Die Quelle für diese externe ausführbare Datei ist Teil meines Python-Moduls, verteilt als .tar.gz-Datei.
Gibt es eine Möglichkeit, die externe ausführbare Datei zu entpacken, zu kompilieren und sie mit setuptools / setup.py?
zu installierenWas ich gerne erreichen möchte ist:
setup.py install
, setup.py build
etc. Am Ende gelöst durch Ändern von setup.py
, um zusätzliche Handler für Befehle hinzuzufügen, die die Installation durchgeführt haben.
Ein Beispiel für ein setup.py
, das könnte sein:
Wenn nun python setup.py install
aufgerufen wird, wird die benutzerdefinierte CustomInstall
-Klasse verwendet, die dann Software kompiliert und installiert, bevor die normalen Installationsschritte ausgeführt werden.
Sie können auch ähnliche Schritte für andere Schritte ausführen, an denen Sie interessiert sind (z. B. build / develop / bdist_egg usw.).
Eine Alternative besteht darin, die Funktion compile_and_install_software()
zu einer Unterklasse von setuptools.Command
zu machen und einen vollwertigen Befehl setgetools für sie zu erstellen.
Dies ist komplizierter, aber Sie können Dinge wie einen Unterbefehl eines anderen Befehls festlegen (um z. B. die doppelte Ausführung zu vermeiden) und benutzerdefinierte Optionen an die Befehlszeile übergeben.
Tags und Links python python-3.x setup.py setuptools