So verlängern Sie die distutils mit einem einfachen post-install-Skript?
Muss ich laufen, um ein einfaches Skript, nach dem die Module und Programme, die installiert wurden.
Ich habe ein wenig Probleme bei der Suche nach straight-forward-Dokumentation, wie dies zu tun. Es sieht aus wie ich brauche, um Erben von distutils.Befehl.installieren, überschreiben von Methoden, und fügen Sie dieses Objekt, um das setup-Skript. Die Besonderheiten sind ein wenig verschwommen, obwohl, und es scheint, wie viel Aufwand für solch einen einfachen Haken. Kennt jemand eine einfache Möglichkeit, dies zu tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich grub durch distutils Quelle für einen Tag zu lernen, genug über Sie, um eine Reihe von benutzerdefinierten Befehlen. Es ist nicht schön, aber es funktioniert.
setup.py
vonpycparser
.OK, ich fand es heraus. Die Idee ist grundsätzlich zu erweitern ist eine der distutils Befehle und überschreiben der run-Methode. Zu sagen, distutils verwenden die neue Klasse, die Sie verwenden können, die cmdclass variable.
Hoffe, dass dies jemand anderes helfen.
Konnte ich nicht Joe Wreschnigs Antwort, die Arbeit und optimiert seine Antwort Analog zu der Erweiterung distutils Dokumentation. Ich kam mit diesem code, funktioniert Prima auf meinem Rechner.
Hinweis: ich habe nicht Bearbeiten, die Antwort von Joe, da bin ich unsicher, warum seine Antwort war nicht die Arbeit auf meinem Rechner.
distutils.command.install
ist das installieren Sie das Modul, die Klasse, die er beabsichtigt, zu erweitern, wardistutils.command.install.install
.Bekam ich eine Fehlermeldung, wenn ich versuchte, die akzeptierte Antwort hier (könnte sein, denn ich bin mit Python 2.6 in diesem speziellen Fall nicht sicher). Dies geschah für beide 'setup.py installieren' und 'pip install':
schlägt mit Fehler: Fehler beim setup.cfg: Befehl 'my_install' hat keine solche option 'single_version_externally_managed'
UND
scheitert mehr wortreich, aber auch mit Fehler: option --single-version-extern-verwaltete nicht erkannt
Variation des akzeptierten Antworten
Austausch der Einfuhren aus distutils mit setuptools das problem bei mir gelöst: