簡體   English   中英

如何部署使用 MSCV 編譯的 Qt 應用程序,使其無需安裝 vc_redist?

[英]How to deploy Qt app compiled using MSCV so that it won't neet vc_redist installed?

有沒有辦法部署使用 MSVC 編譯的 Qt 桌面應用程序,使其“可移植”(只需從文件夾運行 exe,不安裝任何東西,甚至不安裝 VC_redist)?

當然,如果 Microsoft Visual C++ Redistributable 安裝在目標計算機上,則可以使用它,但是是否可以在不安裝的情況下使其運行(例如,通過將一些 dll 從 vcredist 放入應用程序的文件夾)?

如果您靜態構建/鏈接您的應用程序,您將只有 1.exe 而沒有 DLL。 第二種方法是使用共享庫構建您的應用程序,在運行時您的應用程序將在 PATH 和當前目錄中搜索那些 DLL,因此您只需將所有需要的 DLL 放在此文件夾中。 您如何管理您的 Qt 庫?

正如您評論的那樣,您可以使用 windeployqt 添加與 Qt 相關的 DLL 和資源。 至於其他所需的 DLL,您可以使用Dependencies找到它們並手動將它們復制到您的應用程序文件夾中,包括 MSVC DLL。

PS:我知道手動復制這些 DLL 效率低且容易出錯。 這就是為什么我問有沒有辦法搜索和復制所有 DLL 依賴項? ,但我還沒有找到一個足夠聰明的工具來自動完成這項工作。 不過,您可以嘗試評論中提到的那些工具,例如NDepend

暫無
暫無

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

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