簡體   English   中英

使用 Qt 5、C++ 和 Z5BD4C87976F48E402A53919D5EE 從 Linux 創建可執行文件

[英]Create Executable from Linux using Qt 5, C++ and OpenCV

我一直在嘗試部署我的程序的可執行版本,我嘗試了很多方式

  1. 發布模式下運行它
  2. linuxdeployqt工具
  3. GitHub + Jenkins

但那些對我不起作用,我可以在開發環境中部署程序,但我需要將它安裝在不同的計算機上。 如果可以為 Windows 創建版本(因為我開發它的大學要求它)

I'm using Qt 5.9.5, gcc 7.5.0, CMake 3.10.2, GDB 8.1.0, OpenCV 4.1.1 and SO Linux Mint 19.1 Tessa.

我建議您嘗試使用來自https://github.com/QuasarApp/CQtDeployer的 CQtDeployer

您可以在此視頻中找到安裝指南,即使它不是英文的,但其中的所有內容都是逐步描述的。

希望這對你有用。

如何使用 cqtdeployer 部署項目。

  1. 第一個您需要將 cqtdeployer 安裝到您的平台中

    • Snap(另外 14 個 linux 分布):
     sudo snap install cqtdeployer

    或者

    從快照商店安裝並添加所有要求權限。

    從 Snap 商店下載

     chmod +x LinuxInstaller.run./LinuxInstaller.run
  2. 在發布模式下構建您的項目。

  3. 部署你的可執行文件。

    • 對於 Linux 系統:
     cqtdeployer -bin myexecutable
    • 對於 Windows 系統:
     cqtdeployer -bin myexecutable.exe -qmake C:/Qt/5.15.0/min_gw/bin/qmake.exe
    • 對於跨平台構建(Linux -> Windows)
     cqtdeployer -bin myexecutable.exe -qmake ~/crossbuildet-Qt/5.15.0/min_gw/bin/qmake

額外選項

如果您使用額外的庫。 只需將 cqtdeployer 的路徑添加到使用的庫中。

cqtdeployer -bin myexecutable -libDir /PathToMyExtraLibs 

如果您想從 libDir 路徑中找到遞歸庫,只需添加 recursiveDepth 選項。

cqtdeployer -bin myexecutable -libDir /PathToMyExtraLibs -recursiveDepth 5

如果您的應用程序使用 qml,只需添加 qmlDir 選項

cqtdeployer -bin myexecutable -libDir /PathToMyExtraLibs -recursiveDepth 5 -qmlDir /path/to/my/qml/sources

如果您想為您的應用程序創建簡單的安裝程序,只需添加 qif 選項。

cqtdeployer -bin myexecutable -libDir /PathToMyExtraLibs -recursiveDepth 5 -qmlDir /path/to/my/qml/sources qif

如果您使用系統 PATH 中的系統庫,只需添加 deploySystem 選項。

警告:快照版本沒有系統文件的權限。 要部署系統庫,請使用安裝程序中的 cqtdeployer 版本
cqtdeployer -bin myexecutable -libDir /PathToMyExtraLibs -recursiveDepth 5 -qmlDir /path/to/my/qml/sources qif deploySystem

如果您在使用 cqtdeployer 時遇到任何問題,請在官方 github 問題頁面上向您提問。

有關 CQtDeploye 的更多選項,請參閱官方文檔

暫無
暫無

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

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