第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 python setup.py 中,如何允許用戶在不先進(jìn)行構(gòu)建的情況下安裝我的模塊文件?

在 python setup.py 中,如何允許用戶在不先進(jìn)行構(gòu)建的情況下安裝我的模塊文件?

慕工程0101907 2021-12-09 10:27:14
我創(chuàng)建了一個包含一些 C 功能的 Python 模塊。我的潛在用戶正在使用 MS Windows,我正在使用 distutils 將 c 功能構(gòu)建到 .pyd 文件中。我創(chuàng)建了一個清單文件,其中包含 Python 包中的 .pyd 文件,并且所有內(nèi)容(包括 .pyd 文件)都被簽入版本控制。然后用戶可以從版本控制中檢查它并安裝模塊。該模塊的大多數(shù)用戶將無法從源代碼重建 .pyd 文件,因?yàn)樗麄儧]有安裝 Visual Studio,并且他們不一定有權(quán)訪問鏈接源代碼所需的庫。所以我希望他們能夠使用我包含在包中的 .pyd 文件。問題是當(dāng)用戶這樣做時python setup.py install,它有時會嘗試重建 .pyd 文件,具體取決于 .pyd 文件和源文件的相對時間戳。我無法控制哪個時間戳更晚,我認(rèn)為這取決于從版本控制中獲取文件的順序。處理這種情況的正確方法是什么?
查看完整描述

1 回答

?
波斯汪

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超4個贊

處理這種情況的正確方法是構(gòu)建和分發(fā)為窗口標(biāo)記的輪子。除了(或代替)發(fā)布源代碼分發(fā)之外,您還可以這樣做。


pip install --upgrade setuptools wheel

python setup.py build bdist_wheel

這將.whl在./dist/子目錄下生成一個文件,然后您將其上傳到索引(或者您可以直接向用戶發(fā)送分發(fā)文件)。


您的用戶不會這樣做python setup.py install,他們會這樣做pip install yourmodule,pip 將解析正確的二進(jìn)制分發(fā),即.whl基于運(yùn)行時平臺下載和安裝的文件。兼容性標(biāo)簽存在于輪子的文件名中。


如果您希望支持多個平臺,您可能需要為不同的平臺構(gòu)建單獨(dú)的輪子。


查看完整回答
反對 回復(fù) 2021-12-09
  • 1 回答
  • 0 關(guān)注
  • 364 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號