對於這種開發很新穎。想知道是否有人能指出我正確的方向。據我可以看到,使用MacPorts有一個錯誤,它不起作用。但是,我正在閱讀,看到這個:http://beardedcodewarrior.net/2011/07/25/building-gcc-4-6-1-on-mac-os-x-lion/但仍然無法使其工作。當我執行gcc make時,花了3個多小時才完成,然後一旦我執行sudo make install,它成功完成了,但是當我嘗試gcc --version時,它仍然說gcc版本4.2.1(基於Apple Inc. build 5658)(LLVM build 2335.15.00)。我需要4.6.1版本!Mac OS X Lion上的GNU GCC 4.6(.1)編譯器
回答
有三種可能的可能性:
- 是否正確安裝並進入目錄早些時候在你的
$PATH
比你以前的GCC安裝,但bash的內部哈希表條目仍指向舊GCC。 - 它安裝正確,但是在您以前的
$PATH
之後進入了一個目錄,而不是以前的GCC安裝。 - 正確安裝,但可執行文件未命名爲
gcc
。
如果#1,只需運行命令hash -r
並再試一次。爲了避免頻繁的$PATH
查找,Bash使用哈希表將可執行文件名映射到可執行位置。當你在你的$PATH
中安裝一個新的可執行文件時,其名字與$PATH
中稍後的版本相同,Bash不知道它。運行hash -r
說「清理你的散列表」。或者,你可以運行hash -d gcc
來說「忘記你的散列表中的gcc」。
如果#2,則您需要通過其全名執行gcc(例如/opt/local/bin/gcc
),或者修改您的$PATH
以使包含新gcc的目錄早於現有gcc的目錄。假設您正常安裝了MacPorts,那麼應該已經爲您完成了 - 通過修改您的~/.bash_profile
啓動文件,MacPorts將/opt/local/bin
放在$PATH
之前,而不是/usr/bin
。
如果#3,那麼找出可執行文件的名稱。幾乎可以肯定的是一個以gcc爲前綴的名字,所以如果你輸入gcc然後再按Tab鍵兩次,Bash會給你一個以gcc開頭的所有命令的列表。很有可能它被命名爲likw gcc-4.6
或gcc-mp-4.6
。
我建議在'/ usr/local'中安裝一個自定義的gcc(通過給'。/ configure'配置'--prefix =/usr/local')並檢查你的'$ PATH'來確保'/ usr/local/bin'在'/ usr/bin'之前。另外,爲了顯示你的shell可以看到的所有gccs,使用命令'type -a gcc',它將顯示所有名爲'gcc'的命令的路徑。如果沒有'-a'選項,它會向你顯示如果你在命令行輸入'gcc'就會執行的那個選項。 –
好的,謝謝你們倆的幫助。我跑了類型-a gcc並找到了2個版本。我想使用/ usr/local/bin/gcc中的第二個。當我執行/ usr/local/bin/gcc -v時,它顯示爲4.6.1。我怎樣才能修改我的$ PATH文件使其默認爲第一個? –
其實,我修改了$ PATH文件,它看起來像這樣'在/ usr/local/bin目錄 在/ usr/bin中 /bin中 /usr/sbin目錄 /sbin' 但是當我做GCC --version我仍然有4.2.1 –
- 1. 編譯Mac OS X上的lsyncd(Lion)
- 2. Mac OS X Lion - 編譯Q
- 3. 在Mac OS X Lion上使用gcc not llvm-gcc Lion
- 4. Mac OS X Lion上的LLVM
- 5. 如何在OS X Lion上獲得GCC?
- 6. 在Mac OS X 10.7上編譯ECL 11.1.1(Lion)
- 7. Mac OS X Lion上的smbtree
- 8. 在Mac os上編譯C代碼x lion
- 9. g ++編譯器與C++的gcc編譯器相同嗎? (Mac OS X)
- 10. 在Mac OS X Lion上啓用Xdebug Lion
- 11. 在Mac OS X上安裝gcc編譯器10.6
- 12. 在Mac OS X Lion上安裝Scipy 10.7.5
- 13. 在OS X上編譯VIM Mountain Lion
- 14. 交叉編譯器的Mac OS X
- 15. 在Mac OS X Lion上構建32位模式Lion
- 16. 在Mac OS X上啓用wxWidgets編譯Erlang Lion
- 17. 如何在Mac OS X Lion上使用參數編譯PHP?
- 18. 關於Mac OS X Lion上的Apache
- 19. libSDL,CMake和Mac OS X Lion
- 20. 在Mac OS X上缺少llvm-gcc Lion:無法安裝mysql-python
- 21. 用CoreServices.h在Mac OS X上編譯pulseaudio
- 22. 由於gcc路徑,Cabal不能在Mac OS X Lion上工作
- 23. Mac OS X上的Xcode版本Lion 10.7.2
- 24. 無法在mac os x lion上安裝ruby 1.9.2,gcc問題
- 25. Mac OS X Lion上的sqlite3 gem ...失敗!
- 26. Mac OS X Lion上的Apache錯誤
- 27. Mac OS X Lion上的Virtualenvwrapper錯誤
- 28. 編譯Mac OS X上的pymunk
- 29. os x lion上的scipy
- 30. Mac OS X v10.7 GDB(Lion)
哪位gcc?我不認爲你已經使用了你編譯的gcc。嘗試指定完整路徑。 –
Dyno Fu可能是對的。做一個'哪個gcc'來看你實際使用哪一個。 –
您是否已將GCC配置爲在自定義位置安裝?覆蓋系統的GCC通常是一個壞主意(顯然你沒有)。如果您已將其配置爲使用自定義安裝位置,請查看該位置(例如/ opt/bin或/ usr/local/bin)是否包含'gcc'。 – 2011-09-07 05:08:15