国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案

這篇具有很好參考價(jià)值的文章主要介紹了Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

關(guān)鍵字

Remember to call vcvarsall.bat to complete environment setup!

Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not set.

Qt 找不到 msvcp140.dll, msvcp140d.dll, vcruntime140.dll, vcruntime140d.dll, ucrtbased.dll

問(wèn)題分析

當(dāng)你用MSVC編譯器編寫(xiě)的程序,在使用Qt的打包工具windeployqt.exe時(shí),在終端第二行會(huì)看到 “Remember to call vcvarsall.bat to complete environment setup!” 字符串;在打包過(guò)程中還會(huì)遇到 “Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not set.”

大部分人可能沒(méi)在意,也覺(jué)得無(wú)關(guān)緊要。但是,在你的電腦上沒(méi)問(wèn)題,并不代表別人的電腦就正常。比如在運(yùn)行程序時(shí)會(huì)遇到找不到 VCRUNTIME140_1.dll ,找不到msvcp140.dll ,ucrtbased.dll等等VC庫(kù)情況。

Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案

MSVC編譯器編寫(xiě)的程序就會(huì)遇到以上VC運(yùn)行庫(kù)缺失的問(wèn)題。

也就是說(shuō),在打包的過(guò)程中,只是把Qt的相關(guān)動(dòng)態(tài)庫(kù)部署好了,但是VS (或者VC)的運(yùn)行環(huán)境并沒(méi)有部署。

所以為了杜絕隱患,應(yīng)該重視這兩個(gè)警告。那么如何解決呢

解決方案

目前探索了很多種解決方案,供大家參考。至于,手動(dòng)拷貝缺失的動(dòng)態(tài)庫(kù)也可以解決問(wèn)題,但不夠優(yōu)雅,或者太low。

方案一

這種方法最省事,一次設(shè)置,后續(xù)都能用。解決方案就是添加一個(gè)VS的環(huán)境變量。

首先,找到VS的安裝目錄,比如我的是默認(rèn)安裝在C盤(pán)。復(fù)制路徑C:\Program Files\Microsoft Visual Studio\2022\Community\VC

打開(kāi)環(huán)境變量,添加一個(gè)系統(tǒng)變量,變量名為VCINSTALLDIR,變量值為C:\Program Files\Microsoft Visual Studio\2022\Community\VC
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案

然后重新打開(kāi)Qt的命令行,執(zhí)行

windeployqt E:\Code\CppProject\QtWidgetsApplication1\x64\QtWidgetsApplication1.exe

可以看到,這下沒(méi)有Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not set.警告了,同時(shí),輸出里增加了一些VC的動(dòng)態(tài)庫(kù)。這就說(shuō)明,我們打包的同時(shí),已經(jīng)把VC的環(huán)境帶上了。
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案

方案二

不想加入環(huán)境變量怎么辦,也可以做到。但稍微有點(diǎn)繁瑣。

首先搜索一下 vcvarsall.bat的路徑,我的路徑是C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案

然后,打開(kāi)Qt的命令行配置環(huán)境,輸入

call "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Auxiliary/Build/vcvarsall.bat"

Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案
可以看到報(bào)錯(cuò)了,原因是我們沒(méi)選擇對(duì)應(yīng)x86,x64位數(shù)。在尾部根據(jù)自己編譯的位數(shù)加上即可:

call "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Auxiliary/Build/vcvarsall.bat" x64

Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案
這時(shí),就顯示已經(jīng)初始化的x64的環(huán)境。

然后再執(zhí)行打包命令即可,可以看到跟方案一結(jié)果一致。
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案

方案三

還可以使用VS的命令行進(jìn)行打包,打開(kāi)VS的命令行會(huì)自動(dòng)配置好VS的環(huán)境,就不需要我們手動(dòng)配置了。然后調(diào)用windeployqt.exe去打包就行了。

根據(jù)版本去打開(kāi)對(duì)應(yīng)的VS命令行,比如我這里編寫(xiě)的程序是x64位,那我就打開(kāi)x64 Native Tools Command Prompt
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案
可以看到,已經(jīng)自動(dòng)設(shè)置好了VS x64的環(huán)境。那么接下來(lái)調(diào)用對(duì)應(yīng)版本的windeployqt程序進(jìn)行打包。

D:\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe E:\Code\CppProject\QtWidgetsApplication1\x64\QtWidgetsApplication1.exe

Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案

方案四

最后一個(gè)辦法,那就是自己不處理,交給用戶處理。如果遇到這個(gè)問(wèn)題,就安裝vc運(yùn)行庫(kù),下載對(duì)應(yīng)版本安裝即可。
Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案
Microsoft C 和 C++ (MSVC) 運(yùn)行時(shí)庫(kù)下載地址:
https://docs.microsoft.com/zh-cn/cpp/windows/latest-supported-vc-redist?view=msvc-170

問(wèn)題

可能有些人按照此方法打包出來(lái),只有一個(gè)vc_redist64.exe,沒(méi)有對(duì)應(yīng)的動(dòng)態(tài)庫(kù)。
原因可能有 Qt 版本的不同導(dǎo)致差異性。另外,使用MinGW編譯器。本文的前提是 MSVC 編譯器

如果按照上述方法,你還是無(wú)法得到對(duì)應(yīng)的動(dòng)態(tài)庫(kù),可加 --compiler-runtime參數(shù)進(jìn)行嘗試。
即:

D:\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe --compiler-runtime E:\Code\CppProject\QtWidgetsApplication1\x64\QtWidgetsApplication1.exe

總結(jié)

以上就是我總結(jié)的四種解決方案,都可以解決VC運(yùn)行環(huán)境的問(wèn)題。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-436795.html

到了這里,關(guān)于Qt 打包發(fā)布程序,解決找不到msvcp140.dll等動(dòng)態(tài)庫(kù)問(wèn)題正確方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼,怎么解決?

    找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼,怎么解決?

    MSVCP140.dll是一個(gè)Windows操作系統(tǒng)中的動(dòng)態(tài)鏈接庫(kù)文件,它是Microsoft Visual C++ Redistributable for Visual Studio 2015的一部分。這些庫(kù)提供了一些C++程序所需的基本功能,例如內(nèi)存管理、文件操作、字符串處理等等。丟失或者損壞會(huì)導(dǎo)致很多軟件跟游戲無(wú)法打開(kāi)運(yùn)行,小編今天就把解決方

    2024年02月10日
    瀏覽(148)
  • 找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼,要怎么去解決?

    找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼,要怎么去解決?

    很多人咨詢小編,說(shuō)他在使用電腦的過(guò)程中經(jīng)常會(huì)遇到找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼,他一臉懵逼不知道如何進(jìn)行解決,其實(shí)這個(gè)是我們電腦中的組件運(yùn)行庫(kù)丟失所導(dǎo)致的。要解決這個(gè)問(wèn)題也不難,下面我們一起來(lái)看看。 【dll文件常見(jiàn)問(wèn)題】 找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)

    2024年02月01日
    瀏覽(27)
  • 由于找不到msvcp140.dll文件,我們要怎么解決這種情況?

    由于找不到msvcp140.dll文件,我們要怎么解決這種情況?

    在使用電腦的過(guò)程中,我們經(jīng)常會(huì)遇到各種各樣的問(wèn)題,其中之一就是缺少msvcp140.dll文件。這個(gè)問(wèn)題通常會(huì)導(dǎo)致某些軟件無(wú)法正常運(yùn)行,而且很多人對(duì)于如何解決這個(gè)問(wèn)題并不是很清楚。本文將會(huì)介紹多種修復(fù)方法,并對(duì)比哪種方法比較方便。 一.什么是msvcp140.dll msvcp140.dll是

    2024年02月10日
    瀏覽(26)
  • 出現(xiàn)找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼要怎么解決?

    出現(xiàn)找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼要怎么解決?

    出現(xiàn)找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼要怎么解決?當(dāng)你嘗試在Windows系統(tǒng)上運(yùn)行某些程序或游戲時(shí),可能會(huì)遇到“找不到msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼”的錯(cuò)誤提示。這個(gè)錯(cuò)誤通常表示你的系統(tǒng)缺少了msvcp140.dll文件,而這個(gè)文件是Visual C++ Redistributable的一部分。在本文中,我們

    2024年02月15日
    瀏覽(27)
  • 輕松解決:由于找不到MSVCP140D.dll,無(wú)法繼續(xù)執(zhí)行代碼

    輕松解決:由于找不到MSVCP140D.dll,無(wú)法繼續(xù)執(zhí)行代碼

    出現(xiàn)由于找不到MSVCP140D.dll、VCRUNTIME140D.dll、ucrtbased.dll等文件丟失,無(wú)法繼續(xù)執(zhí)行代碼,其實(shí)是缺少了Microsoft C 和 C++ (MSVC) 運(yùn)行庫(kù) ? ?可以去微軟的官網(wǎng)下載安裝包,根據(jù)電腦選擇對(duì)應(yīng)的安裝包,x64是64位電腦,x86是32位電腦。也可以全部安裝。 最新支持的可視C++可再發(fā)行組

    2024年02月10日
    瀏覽(88)
  • 解決Win找不到msvcp140_codecvt_ids.dll

    解決Win找不到msvcp140_codecvt_ids.dll

    其實(shí)很多用戶玩單機(jī)游戲或者安裝軟件的時(shí)候就出現(xiàn)過(guò)這種問(wèn)題,如果是新手第一時(shí)間會(huì)認(rèn)為是軟件或游戲出錯(cuò)了,其實(shí)并不是這樣,其主要原因就是你電腦系統(tǒng)的該dll文件丟失了或者損壞了,這時(shí)你只需下載這個(gè)msvcp140_codecvt_ids.dll文件進(jìn)行安裝(前提是找到適合的版本),當(dāng)

    2024年02月04日
    瀏覽(28)
  • cad2020找不到MSVCP140.dll怎么辦,msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼

    cad2020找不到MSVCP140.dll怎么辦,msvcp140.dll無(wú)法繼續(xù)執(zhí)行代碼

    之前都是用cad2018版本,今天早上想著換個(gè)新一點(diǎn)的cad版本,就下載安裝cad2020版本。打開(kāi)的時(shí)候就提示由于找不到MSVCP140.dll,無(wú)法繼續(xù)執(zhí)行此代碼,這可怎么辦,經(jīng)過(guò)一上午的研究,現(xiàn)在終于知道什么是MSVCP140.dll文件以及如何修復(fù),現(xiàn)在就把一個(gè)簡(jiǎn)單方法分享推薦給大家;

    2024年02月07日
    瀏覽(93)
  • 電腦顯示找不到msvcp140.dll怎么修復(fù)?

    建議先在電腦設(shè)置中找到 應(yīng)用 選項(xiàng),查看是否有 Microsoft Visual C++ 2015 版本或者以上版本的此應(yīng)用 ; 如果 沒(méi)有 直接 方法二 ,如果 有 就直接 方法三 ; 直接 方法二不行 就再 操作一下方法三 ; 如果 都解決不了再操作方法一 ; 手動(dòng)下載msvcp140.dll文件 ,然后將文件復(fù)制到

    2024年02月06日
    瀏覽(26)
  • 解決因缺少msvcp140_2.dll無(wú)法啟動(dòng)程序問(wèn)題

    解決因缺少msvcp140_2.dll無(wú)法啟動(dòng)程序問(wèn)題

    其實(shí)很多用戶玩單機(jī)游戲或者安裝軟件的時(shí)候就出現(xiàn)過(guò)這種問(wèn)題,如果是新手第一時(shí)間會(huì)認(rèn)為是軟件或游戲出錯(cuò)了,其實(shí)并不是這樣,其主要原因就是你電腦系統(tǒng)的該dll文件丟失了或者損壞了,這時(shí)你只需下載這個(gè)msvcp140_2.dll文件進(jìn)行安裝(前提是找到適合的版本),當(dāng)我們執(zhí)行

    2024年02月08日
    瀏覽(23)
  • 電腦提示msvcp140.dll丟失的解決方法,msvcp140.dll丟失修復(fù)教程

    電腦提示msvcp140.dll丟失的解決方法,msvcp140.dll丟失修復(fù)教程

    msvcp140.dll是Microsoft Visual C++ Redistributable所需的一個(gè)動(dòng)態(tài)鏈接庫(kù)文件,它包含了Visual C++運(yùn)行庫(kù)中的一些函數(shù)和類庫(kù)。這個(gè)文件通常出現(xiàn)在Windows操作系統(tǒng)中,用于支持使用Visual C++編寫(xiě)的程序的正常運(yùn)行。如果系統(tǒng)缺少或損壞了這個(gè)文件,可能會(huì)導(dǎo)致某些程序無(wú)法運(yùn)行,或者出現(xiàn)

    2024年02月03日
    瀏覽(98)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包