首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

VS2010 Qt 項目遷移指南:qmake 重構與頭文件路徑修復實戰

     編輯:程式設計疑難解答

遷移痛點

從別的機器拷貝 VS2010 + Qt 項目,編譯報「找不到頭文件」(項目內自帶頭文件),解決方案管理器能見到文件,`#include` 不報紅,但編譯失敗。

核心原因

Qt 項目依賴 `.pro` 文件生成 VS 項目文件 (`.vcxproj`),**絕對路徑、環境變量、Qt 版本** 機器相關。直接拷貝 `.vcxproj`/`filters` 失效。

標準修復流程

  1. 打開命令行 進入項目根目錄(含 `.pro` 文件)。
  2. 執行 qmake 重新生成 VS 項目:
    
    qmake -tp vc PROJECT_NAME.pro
    

    此命令會根據當前機器 Qt 安裝路徑、環境變量、`.pro` 配置,重新生成正確的 `.vcxproj`、`.vcxproj.filters`、`.sln`。

  3. 用 VS2010 打開新生成的 `.sln` 編譯。

UI 文件找不到補充修復

若仍報 UI 頭文件缺失(如 `ui_MainWindow.h`):

  • 檢查 `.pro` 中 `FORMS += mainwindow.ui` 是否存在。
  • 確認 `uic` 生成路徑:`CONFIG += uic3` (Qt4) 或默認 (Qt5) 生成到 `ui_*.h`。
  • 在 VS 中右鍵 `.ui` 文件 → **Custom Build Tool** → 檢查命令行是否調用 `uic.exe`。
  • 手動執行 `uic mainwindow.ui -o ui_mainwindow.h` 生成頭文件,放入項目目錄。

環境變量配置


# 系統環境變量
QTDIR = C:\Qt\4.8.7 (或 5.x)
PATH += %QTDIR%\bin
# VS 項目屬性 → VC++ Directories → Include Directories
$(QTDIR)\include
$(QTDIR)\include\QtCore
$(QTDIR)\include\QtGui
...

避坑總結

錯誤操作正確操作
直接拷貝 .vcxproj/.sln拷貝源碼 + .pro 文件,目標機跑 qmake
手動改 Include 路徑讓 qmake 根據 .pro 自動生成正確路徑
忽略 .user/.filters 文件刪除舊 .user/.filters,qmake 重新生成

總結

Qt + VS 遷移鐵律:**源碼 + .pro 走天下,qmake 一鍵生成原生項目**。不要試圖手動維護 VS 項目文件,`.pro` 才是唯一真實來源。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved