2015-05-18 6 views
6

ich ein Python-Paket, das bin_win32, bin_win64, bin_osx, bin_lnx32 und bin_lnx64 Verzeichnisse mit Binärdateien für die entsprechenden Plattformen enthält, die ich steamcloud.py durch die Python-Datei aufrufen. Wenn ich python setup.py bdist_wheel --universal ausführen, enthält das generierte Rad die Dateien in diesen Unterverzeichnissen nur die Python-Datei nicht. Wie kann ich diese im Rad bekommen?Force-Python-Paket setup.py bdist_wheel enthalten Binärdateien in Unterverzeichnisse

Hinweis: Ich bin mir bewusst, 1) dass die --universal Flagge ist für Python-only-Pakete und 2), dass ich separate Räder für jede Plattform erstellen sollte. Ich habe jedoch keinen Zugriff auf Windows- oder Linux-Computer zur Entwicklung, und es gibt keine Namenskonvention für Linux-spezifische Räder.

Der Inhalt von setup.py kann here gefunden werden.

Antwort

0

Nun, das erste Problem ist, dass das Projekt nicht das erwartete Layout folgt, so dass Sie setup() mit dem package_dir Argument neben den packages und package_data Argumente aufrufen müssen (siehe installing package data).

package_dir={'airship': '<path_to_package>/airship'} 

jedoch die Dateien Sie versuchen wirklich, um nicht Daten verpacken, so dass Sie wahrscheinlich wollen sie nicht zu package_data hinzufügen wie Sie sich gerade befinden. package_data interpretiert Pfade relativ zu Ihren Paketen, nicht relativ zum Projektstamm. Verwenden Sie stattdessen data_files, damit Sie Pfade relativ zu Ihrer setup.py-Datei bereitstellen können.

Verwandte Themen