天天看點

QtCreator下,Qt 5.14.2 MSVC 2015 64-bit環境配置問題來自完整搭建流程擴充參考

文章目錄

  • 問題來自
  • 完整搭建流程
    • 關鍵點——Windows 8.1 SDK
    • 關鍵點——作業系統中Windows 10 SDK 和 Windows 8.1 SDK都安裝了,注意不要沖突
  • 擴充參考

問題來自

先裝了VS2019(勾選了2015生成工具),然後裝了Qt5.14.2(勾選了msvc2015版Qt)

使用QtCreator的msvc2015套件建構時,報錯LNK1158: 無法運作“rc.exe”

完整搭建流程

安裝Visual Studio時,裝上MSVC v140 - VS 2015 C++ 生成工具(v14.00),裡面有VS2015 C++編譯器和庫

安裝msvc2015_64的Qt,設定好編譯套件中的編譯器(一般會自動查找到合适的編譯器)

關鍵點——Windows 8.1 SDK

Windows SDK有兩個要用到的重要工具:調試工具(cdb.exe)和資源編譯工具(rc.exe)

與VS 2015 C++ 生成工具配套的這兩個工具在Windows 8.1 SDK中(不是Windows 10 SDK)

安裝Visual Studio 2019時,已經不提供選擇Windows 8.1 SDK了,隻有Windows 10 SDK,老版本SDK去官網下載下傳安裝:

https://developer.microsoft.com/en-us/windows/downloads/sdk-archive/

控制台修改Windows SDK,可以安裝debug工具

關鍵點——作業系統中Windows 10 SDK 和 Windows 8.1 SDK都安裝了,注意不要沖突

如果系統隻安裝了一個版本的SDK,那麼可以直接設定PATH C:\Program Files (x86)\Windows Kits\8.1\bin\x64 或者 C:\Program Files (x86)\Windows Kits\10\bin\x64 解決找到不到rc.exe的問題

兩個版本并存時,檢查系統環境變量,如果都設了PATH,寫在後面的PATH是不會被用到的,QtCreator直接找到前面的路徑下rc.exe用,如果不比對就報錯結束了

此時可行的操作是:PATH隻留新版本的(或新版本的寫前面),把8.1的rc.exe和rcdll.dll拷貝到D:\Qt\Qt5.14.2\5.14.2\msvc2015_64\bin,讓Qt優先使用目前目錄下的rc.exe

環境搭建完成

擴充參考

rc.exe工具是什麼,參考連結器link.exe 編譯器cl.exe 資源編譯器rc.exe