2015-10-28 84 views
1

我想指定的GCC C++編譯器以下指令:如何從Eclipse CDT指定預處理器指令?

g++ -DPRODUCT=\"HFTLibrary.h\" 

我可以在項目屬性的「命令」字段設置這一點,並能正常工作。

但我不能把它作爲一個符號: 名稱=產品 值= \ 「HFTLibrary.h \」

後,我按確定最終的「字符被刪除

enter image description here

回答

1
  1. 右鍵單擊您的項目並打開屬性對話框(或Alt + Enter)
  2. 轉至C/C++ Build->Settings
  3. 激活Tool settings並查找您的編譯器(即GCC C++編譯器)
  4. 點擊Preprocessor
  5. 點擊Add並輸入您的符號

... hmmmm ...我的Eclipse版本Version: Mars Release (4.5.0) Build id: 20150621-1200測試之後,似乎有一個bug。它適用於正常的定義,但不是當你試圖用這種方式定義一個字符串時。如果你不加引號,那麼定義就會被添加,但是當然不能用作你的代碼中的一個字符串,並且如果你把引號放在引號中,那麼它就會將整個-D...換成錯誤的。

無論如何,將它設置在Path and Symbol屬性中並不會影響您的Build,因爲這只是爲了告訴剔除哪裏可以找到索引器的包含和符號。爲了構建受到影響,您必須按照上述方式更改它。

+1

提交錯誤報告到eclipse https://bugs.eclipse.org/bugs/show_bug.cgi?id=480855 – Devolus

+0

謝謝@Devolus表示使用預處理器部分。我能夠以這種方式定義我的字符串。我正在使用'Eclipse CDT Kepler-SR2' – cristian

+0

因此,在您的版本中似乎並不存在該錯誤。 – Devolus