簡體   English   中英

強制Python包setup.py bdist_wheel在子目錄中包含二進制文件

[英]Force Python package setup.py bdist_wheel to include binaries in subdirectories

我有一個Python包,包含bin_win32bin_win64bin_osxbin_lnx32bin_lnx64子目錄,其中包含適用於相應平台的二進制文件,我通過Python文件steamcloud.py調用steamcloud.py 當我運行python setup.py bdist_wheel --universal ,生成的輪子不包含這些子目錄中的文件,只包含Python文件。 如何將這些包含在方向盤中?

注意:我知道1)-- --universal標志僅適用於Python包,2)我應該為每個平台創建單獨的輪子。 但是,我無法訪問Windows或Linux計算機進行開發,並且沒有特定於Linux的輪子的命名約定。

setup.py的內容可以在這里找到。

好吧,第一個問題是你的項目沒有遵循預期的布局,所以你需要使用package_dir參數調用setup()以及packagespackage_data參數(請參閱安裝包數據 )。

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

但是,您嘗試包含的文件實際上並不是包數據,因此您可能不希望像現在這樣將它們添加到package_data中。 package_data解釋相對於包的路徑,而不是相對於項目根的路徑。 而是使用data_files以便您可以提供相對於setup.py文件的路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM