錯誤信息
error MSB6006: "cmd.exe" exited with code 3,編譯鏈接階段異常退出。
系統性排查清單
- GetLastError / 輸出窗口完整日志:
擴展 MSBuild 輸出詳細度:Tools → Options → Projects → Build → MSBuild verbosity → Detailed
- Include/Library 路徑驗證:
Project → Properties → VC++ Directories → Include Directories / Library Directories
確認 $(QTDIR)/include、$(QTDIR)/lib 正確且優先級高於系統路徑
- PATH 環境變量:
確保 $(QTDIR)/bin 在 PATH 中,且 cl.exe 可直接調用
- Qt Add-in 版本匹配:
VS2010 對應 Qt VS Add-in 1.1.x/1.2.x,Qt 4.8.5 需匹配插件版本
- 運行庫一致性:
Qt 編譯時用的運行庫 (/MD /MDd /MT /MTd) 與項目設置完全一致
Project → Properties → C/C++ → Code Generation → Runtime Library
- 清理重建:
Build → Clean → 刪除 Debug/Release 文件夾 → Rebuild
終極方案
若以上無效:完全卸載 VS2010 + Qt + Add-in → 重裝 VS2010 SP1 → 重裝 Qt 4.8.5 → 重裝匹配 Add-in,避免殘留註冊表/配置干擾。
VS2010+Qt4 屬於「考古級」組合,新項目強烈建議升級至 VS2022 + Qt 6 (CMake),工具鏈穩定性提升數個數量級。