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

Qt Creator Shadow Build 執行路徑與工作目錄差異解析與設定指南

     編輯:程式設計綜合問答

使用 Qt Creator 進行 Shadow Build(建構目錄與原始碼分離)時,常見困惑:可執行檔位於 build-xxx/debug/,但程式內 QDir::currentPath() 回傳的是 build-xxx/(建構根目錄)而非執行檔所在目錄。這是預設行為,而非錯誤。

原因解析

  • Qt Creator 預設將工作目錄設為建構根目錄(build-xxx/),方便存取專案相對路徑資源(如測試資料、設定檔)。
  • 可執行檔實際位於 build-xxx/debug/ 或 build-xxx/release/。
  • QCoreApplication::applicationDirPath() 才會回傳執行檔所在目錄。

如何自訂執行工作目錄

  1. 開啟 專案模式 (Projects) → 左側 建構與執行 (Build & Run) → 執行 (Run) 分頁。
  2. 在 執行設定 區塊找到 工作目錄 欄位。
  3. 修改為所需路徑,例如:%(build_dir)/debug(執行檔目錄)或 %{source_dir}(原始碼目錄)。
  4. 點擊 套用,下次執行即生效。

程式碼中取得正確路徑的最佳實務

// 取得執行檔所在目錄(推薦用於載入同目錄資源)
QString exeDir = QCoreApplication::applicationDirPath();

// 取得專案原始碼目錄(需透過建構系統傳入,如 DEFINES += SRC_DIR=\"$$PWD/\")
// #include "src_dir.h" → QString srcDir = SRC_DIR;

參考資源

Qt Centre 討論串:How to set run configuration in Qt Creator

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