簡體   English   中英

在Eclipse上的Mac OS X山獅上使用c ++ 11(Juno或Kepler)

[英]use c++11 on mac os x mountain lion with eclipse (Juno or Kepler)

嘿,每個人我都剛開始使用c ++ 11,我需要uni,一台Mac,並且我對eclipse很熟悉(我在CDT中同時擁有Juno或Kepler),但由於嘗試了太多,所以我無法運行正確地在eclipse中使用任何c ++ 11功能或編譯任何代碼,有人一直在我的同一個位置上,請幫助我,認真地我已經嘗試了所有以前的線程,但是由於我的沮喪,我仍然在終端上編譯所有內容和在gedit中進行編輯並不是最舒適的方式,順便說一下,我必須使用g ++-4.7作為命令而不是g ++進行編譯,這意味着我仍然擁有舊的操作系統gnu,請有人逐步解釋我該怎么做。我非常沮喪,求求你!!!

PS。 只是澄清一下我用自制軟件安裝了gcc 4.7,但是路徑不同於原始文件(/ usr / local / bin,而不是我認為使用eclipse的常規/ usr / bin以及我無法使用它的原因,謝謝。大家)

在嘗試了不同的方法並花費了乏味的時間解決我的問題之后,我將回答我自己的問題,希望有同樣需求的人不會嘗試這種令人討厭的情況。

首先,在許多論壇上都提到,眾所周知,為Mac OS提供的gcc編譯器已經過時(已經超過5年了,在計算方面已經很多了),因此使用c ++ 11的第一步是獲得新版本的gcc。

數據包通用管理器有兩種選擇(自制軟件和Macports軟件),我不得不感到沮喪的是,我都試圖查看數據包管理器中的版本是否存在問題,甚至認為應該是相同的,但是對於令我驚訝的是,我稍后會解釋一個小的差異,這使我建議使用macport,因為使用macports時,eclipse可以像使用舊c ++一樣流暢,而使用自制程序進行安裝時,編譯將與macport相同,但是eclipse會抱怨c ++ 11中的新語法(eclipse會告訴您資源無法解析,甚至不能正確編譯)。

此步驟假設您已經擁有命令行:

  1. 從官方網頁下載適當的Macports(google it)
  2. 在終端中鍵入以下命令
    • sudo端口selfupdate
    • sudo端口升級已過時
    • 須藤端口安裝-d gcc47
    • 端口選擇--list gcc

有了這個,您就擁有了gcc,並會向您顯示mac中安裝了哪些gcc,因為新的gcc遺漏了,所以現在會丟失select,使用它。 -sudo端口選擇gcc mp-gcc47

3在我的情況下安裝eclipse kepler創建了一個新的C ++項目,但是讓所有的標准操作都做了下一個:-在向導窗口中,選擇交叉GCC作為工具鏈(例如,可執行的Hello World c ++項目)作為工具鏈,放置一個隨機名稱,然后在窗口后按下一步,現在在選擇編譯器的窗口中輸入新gcc的路徑(默認為/ opt / local / bin)作為前綴,將其保留為空,然后按完成底部。

4現在轉到項目屬性,然后在c / c ++構建中選擇設置,並在工具設置選項卡中轉到其他跨g ++編譯器,並在其他標志中添加-std = c ++ 11。

5最后,轉到c / c ++常規->路徑和符號,然后選擇制表符,然后選擇gnu c ++語言,然后按添加以鍵入GXX_EXPERIMENTAL_CXX0X作為名稱,然后按確定。

現在只需按Apply和OK,之后Mac應該在eclipse中運行c ++ 11。

希望能為您服務,就像我看到你們周圍的人一樣。

請注意,也許您將要配置運行,但是比起運行要簡單得多->運行配置,然后雙擊c / c ++應用程序,現在幾乎所有內容都會生成,只需要您用編譯器輸出的路徑(假設您已經構建了將生成可執行文件的項目),通常該文件位於項目的調試文件夾中,其名稱與所有已編譯的文件的名稱相同。

有一個好人。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM