我有一個python GUI應用程序。現在我需要知道應用程序鏈接到的所有庫。這樣我可以檢查所有庫的許可證兼容性。獲取python項目使用的所有模塊/包
我試過使用strace,但strace似乎報告了所有的軟件包,即使它們沒有被應用程序使用。
而且,我嘗試了python ModuleFinder,但它只是返回python2.7內部的模塊而不是鏈接的系統級包。
那麼有什麼辦法可以讓我的應用程序鏈接到所有庫?
我有一個python GUI應用程序。現在我需要知道應用程序鏈接到的所有庫。這樣我可以檢查所有庫的許可證兼容性。獲取python項目使用的所有模塊/包
我試過使用strace,但strace似乎報告了所有的軟件包,即使它們沒有被應用程序使用。
而且,我嘗試了python ModuleFinder,但它只是返回python2.7內部的模塊而不是鏈接的系統級包。
那麼有什麼辦法可以讓我的應用程序鏈接到所有庫?
與安裝蛋黃:
pip install yolk
調用以下獲得在您的環境雞蛋的清單:
yolk -l
或者,你可以使用snakefood來製圖你的依賴,在this question回答。
你可以嘗試進入其中解壓雞蛋儲存的站點包文件夾,然後運行以下命令:
ls -l */LICENSE*
這會給你的許可文件的列表每個項目(如果他們存放在雞蛋的根部,它們通常是)。
你可以給一個嘗試到圖書館發現 https://github.com/bndr/pipreqs 引導 https://www.fullstackpython.com/application-dependencies.html
圖書館pipreqs是PIP安裝並自動生成文件requirements.txt以下。它包含所有具有正確安裝的virtualenv或python版本的導入庫。
只需鍵入:
pip install pipreqs
pipreqs /home/project/location
它會打印:
INFO: Successfully saved requirements file in /home/project/location/requirements.txt
另外它與兼容PIP安裝-r命令:如果你需要創建項目的VENV或者使用兼容庫更新您當前的Python版本,您只需輸入:
pip install -r requirements.txt
我有同樣的問題,這個圖書館解決了我。不知道它是否適用於多層依賴關係,例如,如果您擁有嵌套級別的依賴庫。
似乎這是安裝*最新版本的軟件包而不是當前版本您正在使用。 – enneppi
pip凍結所有安裝的軟件包 – wolendranh
pip安裝蛋黃,它給你一個你的環境中使用的所有雞蛋的列表:* yolk -l * – datashaman