Dies ist der Befehl dh_python3, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
dh_python3 – berechnet Python-Abhängigkeiten und fügt Betreuer-Skripte zur Byte-Kompilierung hinzu
Dateien usw.
ZUSAMMENFASSUNG
dh_python3 -p PACKAGE [-V [XY][-][AB]] DIR [-X REGEXPR]
BESCHREIBUNG
SCHNELL PROFESSIONELLE FÜR INSTANDHALTER
· Beschreiben Sie ggf. unterstützte Python 3-Versionen über das Feld „X-Python3-Version“ in
debian/control,
· Build hängt von dh-Python ab
· Build-Abhängigkeit von Python3 oder Python3-All oder Python3-All-Dev,
· Erstellen Sie ein Modul/eine Anwendung mit dem Standard-Build-System. Denken Sie daran, es zu erstellen
Erweiterungen für alle unterstützten Python 3-Versionen (Loop over py3versionen -vr),
· Installieren Sie Dateien auf dem Standard Standorte, hinzufügen --install-layout=deb zu setup.py
install-Befehl, wenn Ihr Paket distutils verwendet,
· hinzufügen python3 zu dhs --with Option, oder:
· das /usr/share/cdbs/1/class/python-distutils.mk in debian/rules und hängen davon ab
CDBs (>= 0.4.90), oder:
· Forderung dh_python3 in England, binär-* Ziel,
· hinzufügen ${python3:Depends} bis Hängt davon ab
ANMERKUNG
Abhängigkeiten
dh_python3 versucht, Python-Abhängigkeiten aus dem zu übersetzen erfordert.txt Datei nach Debian
Abhängigkeiten. In vielen Fällen funktioniert dies ohne zusätzliche Konfiguration, da
dh_python3 verfügt über eine integrierte Zuordnung von Python-Modulnamen zu Debian-Paketen
regelmäßig aus dem Debian-Archiv neu generiert. Standardmäßig sind die Versionsinformationen in
Die Python-Abhängigkeiten werden verworfen. Wenn Sie möchten, dass dh_python3 strenger generiert
Abhängigkeiten auftreten (z. B. um ABI-Probleme zu vermeiden) oder wenn die automatische Zuordnung nicht funktioniert
Für Ihr Paket müssen Sie dh_python3 zusätzliche Regeln bereitstellen
Übersetzung des Python-Moduls in Debian-Paketabhängigkeiten.
Für ein Paket python3-foo das hängt vom Paket ab python3-bar, es gibt zwei Dateien, die
kann solche Regeln vorsehen:
1. Wenn die python3-foo Das Quellpaket wird mit einem geliefert debian/py3dist-overrides Datei, diese Datei
wird von dh_python3 während der Erstellung von verwendet python3-foo.
2. Wenn die python3-bar Das Quellpaket wird mit einem geliefert debian/python3-bar.pydist Datei (und verwendet
dh_python3), diese Datei wird in das Binärpaket aufgenommen als
/usr/share/dh-python/dist/cpython3/python3-bar. Während des Baus von python3-foo,
dh_python3 wird dann die Datei finden und verwenden.
Beide Dateien haben das gleiche Format wie in beschrieben /usr/share/doc/dh-python/README.PyDist. Wenn
Sie möchten lediglich versionierte Abhängigkeiten generieren (und davon ausgehen, dass die python3-bar
Paket bietet die pybar Python-Modul), in den meisten Fällen reicht es aus, das zu platzieren
Linie pybar python3-bar; PEP386 in eine der oben genannten Dateien kopieren.
privat dirs
/usr/share/foo, /usr/share/games/foo, /usr/lib/foo und /usr/lib/games/foo privat
Verzeichnisse werden standardmäßig nach Python-Dateien durchsucht (wobei foo ist der Name des Binärpakets). Wenn
Wenn Ihr Paket Python-Dateien in einem anderen Verzeichnis versendet, fügen Sie einen weiteren dh_python3-Aufruf hinzu
in debian/rules mit dem Verzeichnisnamen als Argument – Sie können verschiedene Optionen verwenden
in diesem Aufruf. Wenn Sie Optionen ändern müssen (z. B. eine Liste der unterstützten Python 3-Versionen)
Für ein privates Verzeichnis, das standardmäßig aktiviert ist, rufen Sie dh_python3 mit --skip-private auf
Option und fügen Sie einen weiteren Aufruf mit einem Pfad zu diesem Verzeichnis und neuen Optionen hinzu.
debuggen Pakete
In Binärpaketen, deren Name mit endet -dbg, alle Dateien in /usr/lib/python3/dist-packages/
Verzeichnis mit anderen Erweiterungen als so or h werden standardmäßig entfernt. Verwenden
--no-dbg-cleaning Option zum Deaktivieren dieser Funktion.
pyinstall Dateien
Die in der Datei debian/pkg.pyinstall aufgeführten Dateien werden als öffentliche Module installiert (d. h. in
.../dist-packages/ Verzeichnis) für alle angeforderten Python-Versionen.
Syntax: Pfad/zu/Datei [VERSION_RANGE] [NAMESPACE]
Das Debian-Verzeichnis wird automatisch aus dem Pfad entfernt, sodass Sie Ihre Dateien dort ablegen können
debian/-Verzeichnis und installieren Sie sie von diesem Ort aus (falls Sie sie installieren möchten).
„debian“-Namespace, setzen Sie NAMESPACE auf debian). Wenn NAMESPACE festgelegt ist, werden alle aufgelisteten Dateien verwendet
im Verzeichnis .../dist-packages/NAMESPACE/ installiert werden.
Beispiele:
· foo.py. installiert .../dist-packages/foo.py für alle unterstützten Python-Versionen
· foo/bar.py 3.3- Installiert .../dist-packages/foo/bar.py für Versionen >= 3.3
· foo/bar.py Spam installiert .../dist-packages/spam/bar.py
· debian/*.py spam.egg 3.2 Installiert .../python3.2/dist-packages/spam/egg/*.py-Dateien
pyremove Dateien
Wenn Sie einige öffentliche Module entfernen möchten (z. B. Dateien im Verzeichnis .../dist-packages/)
vom Build-System installiert (von allen unterstützten Python-Versionen oder nur von einer Teilmenge von
diese Versionen), fügen Sie sie der Datei debian/pkg.pyremove hinzu.
Beispiele:
· *.pth Entfernt .pth-Dateien aus .../dist-packages/
· bar/baz.py 3.2 Entfernt .../python3.2/dist-packages/bar/baz.py
überschreiben unterstützt / Standard Python Versionen
Wenn Sie die Systemliste der unterstützten Python-Versionen oder die Standardversion überschreiben möchten
(z. B. um ein Paket zu erstellen, das Symlinks für ältere Python-Versionen enthält, oder um .py zu kompilieren
Dateien nur für bestimmte Interpreterversion), können Sie dies über tun DEBPYTHON3_SUPPORTED und / oder
DEBPYTHON3_DEFAULT env. Variablen.
Ejemplo: 3.2,3.3 beschränkt die Liste der unterstützten Python-Versionen auf Python 3.2 und Python
3.3
OPTIONAL
--Version
Versionsnummer des Programms anzeigen und beenden
-h, --help
Hilfenachricht anzeigen und beenden
--no-guessing-deps
Deaktivieren Sie Schätzabhängigkeiten
--no-dbg-cleaning
Entfernen Sie keine Dateien aus Debug-Paketen
--no-ext-rename fügt weder magische Tags noch Multiarch-Tupel zu Erweiterungsdateinamen hinzu
--no-shebang-rewrite
Schreibe Schebangs nicht um
--skip-private
Überprüfen Sie keine privaten Verzeichnisse
-v, - ausführlich
Aktivieren Sie den ausführlichen Modus
-i, --unabhängig
Handeln Sie auf architekturunabhängigen Paketen
-a, --Bogen
Auf architekturabhängige Pakete einwirken
-q, --ruhig
sei leise
-p PAKET, --Paket=PAKET
Handeln Sie auf das Paket mit dem Namen PACKAGE
-N NO_PACKAGE, --no-package=NO_PACKAGE
Handeln Sie nicht auf das angegebene Paket
-V VRANGE
Geben Sie eine Liste der unterstützten Python 3-Versionen an. Sehen py3compile(1) für Beispiele
-X REGEXPR, --ausschließen=REGEXPR
Elemente ausschließen, die mit dem angegebenen REGEXPR übereinstimmen. Sie können diese Option mehrmals verwenden
Erstellen Sie eine Liste der auszuschließenden Dinge.
--compile-all
Kompilieren Sie alle Dateien aus dem angegebenen privaten Verzeichnis in postinst/rtupdate, nicht nur die
diejenigen, die vom Paket bereitgestellt werden (d. h. übergeben Sie den Parameter --package nicht an
py3compile/py3clean)
--depends=HÄNGT DAVON AB
Übersetzen Sie gegebene Anforderungen in Debian-Abhängigkeiten und fügen Sie sie hinzu
${python3:Depends}. Verwenden Sie es für fehlende Elemente in „requires.txt“.
--recommends=EMPFEHLUNGEN
Übersetzen Sie gegebene Anforderungen in Debian-Abhängigkeiten und fügen Sie sie hinzu
${python3:Recommends}
--suggests=SCHLÄGT VOR
Übersetzen Sie gegebene Anforderungen in Debian-Abhängigkeiten und fügen Sie sie hinzu
${python3:Suggests}
--requires=DATEINAME
Übersetzen Sie Anforderungen aus bestimmten Dateien in Debian-Abhängigkeiten und fügen Sie sie hinzu
${python3:Depends}
--shebang=COMMAND
Verwenden Sie den angegebenen Befehl als Shebang in Skripten
--ignore-shebangs
Übersetzen Sie Shebangs nicht in Debian-Abhängigkeiten
Verwenden Sie dh_python3 online über die Dienste von onworks.net