Gdzie są biblioteki g ++ stl w Darwin

1

Próbuję zrozumieć, w jaki sposób niektóre struktury danych są zaprojektowane w STL. W Ubuntu zwykle otwieram pliki .h i .cpp z / usr / local / include, ale w Darwin (wersja jądra 14.3.0) jestem zagubiony, Google też nie pomaga, struktura plików jest inna. Czy możesz mi powiedzieć, gdzie są pliki .h i .cpp tych bibliotek w systemie Mac?

PS Zainstalowałem XCode, ale mi się nie podobało, więc go odinstalowałem. G ++ pozostał nawet po odinstalowaniu. Właściwie nigdy nie próbowałem sprawdzać, czy g ++ tam był, zanim zainstalowałem Xcode. Nie mam /Applications/Xcode.app, więc musi być gdzie indziej.

Shankhoneer Chakrovarty
źródło
Czy masz zainstalowany Xcode? Oto co mam:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1/
Mateusz Szlosek
2
Można także sprawdzić zawierać ścieżki przez: gcc -x c++ -v -E /dev/null.
Mateusz Szlosek,

Odpowiedzi:

1

OS X nie zawiera kompilatorów c ++.

Musisz zainstalować Xcode i / lub jego narzędzia wiersza poleceń, aby uzyskać clang (uwaga nie gcc)

Standardowe biblioteki C ++ (które nie muszą być rzeczywistymi plikami, ale są w libc ++, która jest domyślną biblioteką Xcode). Pliki dołączania znajdują się w /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/

znak
źródło
Zainstalowałem XCode, ale mi się nie podobało, więc go odinstalowałem. G ++ pozostał nawet po odinstalowaniu. Właściwie nigdy nie próbowałem sprawdzać, czy g ++ tam był, zanim zainstalowałem XCode. Nie mam /Applications/Xcode.app, więc musi być gdzie indziej.
Shankhoneer Chakrovarty,
Potrzebujesz Xcode, ponieważ zawiera biblioteki i kompilacje itp.
Mark
1

Dzięki wszystkim. Komentarz Mateusza Szloska pomógł mi rozwiązać problem. Poniższe polecenie podaje listę katalogów wyszukanych dla #include:

gcc -x c++ -v -E /dev/null

i znalazłem ten katalog zawiera wszystkie pliki .h i .cpp:

/Library/Developer/CommandLineTools/usr/include/c++/v1

Mam nadzieję, że to komuś pomoże!

PS Mateusz Szlosek opublikował komentarz i nie mogłem znaleźć sposobu na zaakceptowanie komentarza jako odpowiedzi

Shankhoneer Chakrovarty
źródło