qt5.7.1 (create4.2.0)+msvc2015 安裝后無法編譯 & 缺少h文件


其實問題的本質是,系統中沒有vs2015的注冊信息導致

一開始是報:

"'cl' 不是內部或外部命令,也不是可運行的程序"解決方案 

通過在環境變量中添加了C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin 路徑解決,但是這不治本質

后來能編譯后,報缺少h文件的問題。

深入了解后,發現是qt使用了msvc的編譯版本:Microsoft Visual C++ Compiler 14.0 (amd64) 

在qt中應用此版本的編譯器后,會自動調用:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat 

此bat腳本會根據版本信息,自動調用與之相應的bat,代碼如下,也可以自己查看全部代碼:

:check_platform
if /i %1 == x86 goto x86
if /i %1 == amd64 goto amd64
if /i %1 == x64 goto amd64

我的版本實際調用時,時跳轉到了:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat 

但因為,注冊表中沒有vs2015信息,會在此語句出報錯:

:start
@call :GetVSCommonToolsDir
@if "%VS140COMNTOOLS%"=="" goto error_no_VS140COMNTOOLSDIR

直接跳到:

:error_no_VS140COMNTOOLSDIR
@echo ERROR: Cannot determine the location of the VS Common Tools folder.
@goto end

別的博客解決辦法,在我這里都沒沒有效果,其中手寫部分bat代碼,將獲取路徑代碼換成絕對路徑代碼,但是問題是涉及到的環境路徑太多了,最終放棄

修改環境變量的辦法也無法奏效。

最終無可奈何,安裝了另外版本的win10,之后所有的qt安裝工作異常順利。

不過折騰的整個過程,非但不是浪費時間,反而非常有用。理解了安裝過程的各個步驟,學到了非常多知識。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM