PyQtdeploy-V2.4 User Guide 中文 (二)
PyQtdeploy 使用者指南
目錄
-
介紹
- 與V1.0+的差異
- 作者
- 證書
- 安裝
-
PyQt的演示
- 構建演示
- Android
- IOS
- Linux
- MacOS
- Windos
-
構建系統根目錄
- 標準組建外掛
- 建立Sysroot規範檔案
- PyQt演示的Sysroot
- 命令列
- 編寫組建外掛
-
建立PyQtdeploy專案
- 定義應用程式源
- 定義qmake配置
- 新增標準庫包
- 新增其他包
- 新增其他擴充套件模組
- 定義檔案和目錄位置
-
構建應用程式
- 命令列
- Windows和動態載入擴充套件模組
-
使用pyrcc的應用程式
- 支援PEP 302可選匯入掛鉤
- pdytools模組
部署過程概覽
PyQtdeploy的母的是將Python應用程式、Python直譯器、Python標準庫、Python C擴充套件模組、第三方Python包和第三方擴充套件模組轉換為對於特定目標的單個可執行檔案。根據目標,可執行檔案可能需要通過某種方式打包才能真正部署。例如:Android應用程式需要簽名並打包為.apk
檔案。任何此類打包都不在PyQtdeploy的範圍內。
雖然PyQtdeploy允許你建立單個可執行檔案,但你能根據需要將組建保留在可執行檔案外部。
PyQtdeploy支援一下目標體系結構:
- Android -32
- Android -64
- IOS -64
- Linux -64
- MacOS -64
- Win -32
- Win -64
完整的結構命名由平臺和一個用於區分的-
組成。請注意,並非所有的平臺和操作位的組合都支援。
PyQtdeploy使用Qt的以下部分:
- qmake 是支援交叉編譯到多個目標的QT系統。
- rcc 是一個將任意檔案轉換為嵌入式檔案結構的C++資料結構,該檔案系統可作為應用程式的一部分進行連線。
- QtCore 庫實現了訪問識別引用rcc建立的嵌入式檔案系統內容的檔案和目錄名稱的APIs。PyQtdeploy實現了使用QtCore的匯入掛鉤,以便可以像從普通檔案系統匯入Python模組一樣從嵌入式檔案系統匯入靜態的Python模組。
注意:PyQtdeploy生成的程式碼本身並不適用PyQt。PyQtdeploy可用於部署非pyqt應用程式,包括簡單的命令列指令碼。但是,由於每個已部署的應用程式都連結到QtCore 庫,所以您應該確保您的應用程式的許可與您正在使用的Qt版本的許可相容。
當一個應用程式由許多第三方元件(Python包和擴充套件模組)組成時,有必要將這些組建安裝在已定義的位置,以便在應用程式的構建過程中可以找到它們。雖然在某些情況下可以使用現有的Python安裝,但它有許多缺點:
- 不同的應用程式可能對第三方軟體包的不同版本有要求,因此難以共享相同的Python安裝。
- 您的應用程式可能需要以不同方式配置元件(包括Python直譯器本身)。
- 標準Python安裝將包含動態連結的擴充套件模組,但您可能希望使用靜態連結的版本。
- 在部署非本機平臺時無法使用它。
經驗表明,將所有這些元件與任何標準Python安裝分開都更容易。特定於目標的系統根目錄(sysroot )可用於包含所有必需元件的適當配置和版本構建。如果您正在開發許多應用程式,那麼很可能您將對這些應用程式使用的元件版本進行標準化。因此,您可以建立一個用於構建所有應用程式的sysroot 。雖然使用sysroot 是完全可選的,但強烈建議使用。
開發可部署應用程式所需的步驟如下:
- 使用包含所需第三方元件的本機Python安裝,正常開發和測試應用程式。
- 確定所需的第三方元件並構建特定於目標的sysroot。請參閱以瞭解如何使用pyqtdeploy-sysroot 執行此操作。
- 為應用程式建立專案檔案,以標識應用程式的原始碼以及應用程式使用的所有元件及其位置。請參閱以瞭解如何使用 pyqtdeploy執行此操作。
-
凍結Python模組並在特定於目標的構建目錄中生成qmake
.pro
檔案。該.pro
檔案將引用相關sysroot 中的所有必需元件。執行qmake 然後make 以建立應用程式可執行檔案。請參閱以瞭解如何使用pyqtdeploy-build 執行此操作。
返回