我知道Mac OS X是一個基於Unix的系統。我聽說C標準庫如stdio.h位於/usr/local/include
或/usr/include
。但是這個目錄中沒有任何類型的庫。我使用終端來搜索這個目錄,我也使用命令如find ./ -iname "stdio.h"
,但沒有出現。然而,奇怪的是,gcc -test.c -o test
命令解決。它怎麼發生的?我想知道我的C庫位於何處。 p.s我也使用Xcode。它與這個應用程序有關嗎?幫我! 而且我有AWS EC2 linux服務器,並且它有兩個我上面提到過的庫。Mac中的「stdio.h」在哪裏?
回答
如果您有Xcode,但尚未安裝可選的命令行工具包,則標準包含和庫可能無法在通常的位置找到。嘗試:
$ find /Applications/Xcode.app -name stdio.h
,你可能會看到類似:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/c++/4.2.1/tr1/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/sys/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/include/c++/4.2.1/tr1/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/include/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/include/sys/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/sys/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1/tr1/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/sys/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/tr1/stdio.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/stdio.h
然而,你可能要如果你打算做任何非Xcode中安裝的命令行工具包(即命令線)編程。然後,您將看到/usr/include
和/usr/lib
中的常用標題和庫。
謝謝。但是在我安裝命令行工具後,只有/ usr/include有庫文件。沒有「/ usr/local/include」!這意味着,當我輸入「cd/usr/local/include」時,出現錯誤:沒有這樣的文件或目錄。可以嗎? – user3595632 2015-02-06 10:17:26
@ user3595632沒問題,'/ usr/local'傳統上由附加SDK和包使用,而不是由平臺供應商使用。 – Potatoswatter 2015-02-06 10:22:20
沒錯 -/usr/local用於安裝第三方軟件,以便在更新系統時不會被覆蓋。系統的東西進入/ usr。 – 2015-02-06 10:22:49
在我的筆記本電腦中,它出現在許多地方,如/usr/include/stdio.h
和/usr/include/sys/stdio.h
和/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/stdio.h
。
在文件夾
Applications/Xcode/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include
或相似。
創建/更新/usr/include
一個符號有檢測庫:
sudo ln -sf /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include /usr/include
以上路徑可以通過搜索stdio.h中找到
find /Applications/Xcode.app -path '*/usr/include/stdio.h'
我必須做的這與每一個XCode/MacOS SDK更新,今天面對這與XCode 7升級。
一旦安裝了命令行工具,它們就不能用xcode-select
重新安裝,因此路徑可能無法通過Mac AppStore升級進行更新。
卸載&重新安裝XCode,然後運行xcode-select --install
可能會更新路徑,但這是一種矯枉過正。
一些帖子也提到xcode-select --switch /Application/Xcode.app
,但我沒有太多運氣。
如果沒有命令行工具安裝,你可以運行:
xcode-select --install
一個對話框打開,爲您接受許可協議等。
(這是從上述回答中遺漏的。)
這是最短的答案! – 2017-06-06 19:17:27
- 1. 哪裏可以找到stdio.h的實現?
- 2. 我在哪裏可以找到Visual Studio中stdio.h的實現?
- 3. Windows中'stdio.h'的目標文件在哪裏?
- 4. Mac上的debug.keystore在哪裏?
- 5. Mac App的stdout在哪裏?
- 6. Mac OS中「tee」的代碼在哪裏?
- 7. Mac OS X中的syscall_sw.h在哪裏?
- 8. Mac在哪裏apachectl Yosimite
- 9. mac在哪裏? (osx el capitan)
- 10. 哪裏是在Mac的Ansible的庫
- 11. Mac OS X上的libdl.so在哪裏?
- 12. Mac上的Python解釋器在哪裏?
- 13. Mac OS X 10.8上的svn在哪裏?
- 14. mac os x的opencv包在哪裏?
- 15. MAC的R默認路徑在哪裏
- 16. mac上的「neo4j-server.properties」文件在哪裏?
- 17. 在Mac上安裝Python dylibs在哪裏?
- 18. 在Mac上,Flash cookie存儲在哪裏?
- 19. 流星在Mac上安裝在哪裏?
- 20. Mac OS X調試接口在哪裏
- 21. MAC 10.7:gl.h文件在哪裏?
- 22. nodeJS + jslint:在哪裏安裝mac OSX?
- 23. XUL 5 SDK for MAC在哪裏?
- 24. 在mac上的android studio中的項目屬性在哪裏?
- 25. stdio.h - 什麼是libfile的名稱,我在哪裏可以找到它Linux
- 26. stdio.h中在OS X
- 27. Mac OS X上sched.h中的clone()方法在哪裏
- 28. 我在哪裏可以找到Mac OSX中的「launchd.conf」文件
- 29. 在Mac OS-X中安裝sphinx-build在哪裏?
- 30. 啤酒應用程序在Mac中存儲在哪裏?
''頭文件是C標準庫的一部分,可能位於編譯器搜索頭文件的* any *目錄中,例如它可能位於'/ usr/lib'的子目錄中。另外,命令'find ./ -iname「stdio.h」'從* current *目錄中搜索文件,所以如果你在例如你自己的主目錄你將找不到該文件。 –
2015-02-06 09:59:04