2012-02-18 13 views
22

Apple niedawno wydała Command Line Tools:XCode 4.3 Command Line Tools

  1. Jakie są narzędzia przewidziane w pakiecie narzędzi wiersza polecenia?

  2. Czy istnieje dokumentacja inna niż strony podręcznika?

Należy pamiętać, że zainstalowałem te narzędzia, dodając określony komponent do Xcode. Co więcej, nie chodzi o projekt Xcode, ale o pakiet wydany przez firmę Apple w dniu 16 lutego 2012 roku!

+0

Wyobrażam sobie, że powinny być dostępne z linii poleceń, jak zwykle. Zwykle są instalowane do '/ usr/bin' lub są tam dowiązane symbolicznie. Przynajmniej tak było w przeszłości. Teraz, gdy nie są one dołączone do instalacji domyślnie nie jestem pewien, co to jest lokalizacja instalacji. – prodigitalson

+0

To tylko podzbiór narzędzi programistycznych z GCC i nagłówków do kompilacji oprogramowania, a także narzędzi do kompilacji, które domyślnie mogą nie być w systemie, jak make llvm, itp. Wcześniej używałeś pełnego kodu Xcode , teraz został podzielony na osobny składnik mpkg, który jest super wygodny dla tych z Homebrew lub Macportów, ale tak naprawdę nie potrzebuje XCode. Co dokładnie próbujesz znaleźć/użyć? JEŚLI masz już zainstalowany Xcode, powinieneś już mieć te rzeczy. – prodigitalson

+2

Nie wiem, jak utworzyć projekt, ale żeby zbudować, zrobiłbyś 'xcodebuild', istnieje' xcodeindex', który indeksuje folder projektu. oraz 'xcode-select', który wybiera lokalizację folderu Xcode (prawdopodobnie, jeśli masz wiele wersji xcode lub wiele wersji powiązanych narzędzi). Jeśli wykonasz polecenie 'man xcode-select', zobaczysz szereg dodatkowych narzędzi, które są wymienione na końcu. Możesz wtedy zrobić 'man' dla dowolnego z tych innych narzędzi do użycia. – prodigitalson

Odpowiedz

12

Otwórz narzędzia wiersza poleceń DMG, a znajdziesz meta-pakiet, który możesz wyodrębnić za pomocą komendy pkgutil --expand 'Command Line Tools.mpkg' metapackage. Otwórz plik metapackage/Distribution że właśnie wyodrębnione w edytorze tekstu, aby zobaczyć te pakiety, które zawierają metapakietu:

com.apple.pkg.DevSDK 
com.apple.pkg.X11SDK 
com.apple.pkg.QuickTimeSDK 
com.apple.pkg.OpenGLSDK 
com.apple.pkg.WebKitSDK 
com.apple.pkg.FireWireSDK 
com.apple.pkg.BluetoothSDK 
com.apple.pkg.CoreAudioSDK 
com.apple.pkg.JavaSDK 
com.apple.pkg.clang 
com.apple.pkg.llvm-gcc4.2 
com.apple.pkg.X11Documentation 
com.apple.pkg.DeveloperToolsCLI 

Odpowiednie pliki pakietów znajdują się w ukrytym katalogu obok Packages metapakiet. Ich zawartość można znaleźć pod numerem pkgutil --payload-files.

Jeśli masz plik na dysku, a chcesz wiedzieć, który pakiet pochodzi:

$ pkgutil --file-info /usr/bin/clang 
volume:/
path: /usr/bin/clang 

pkgid: com.apple.pkg.clang 
pkg-version: 4.3.0.0.1.1249367152 
install-time: 1342021874 
uid: 0 
gid: 0 
mode: 755 

Teraz trochę informacji premia, która będzie przydatna, jeśli kiedykolwiek chcesz usunąć się narzędzia wiersza polecenia. Apple w swojej nieskończonej mądrości odmawia udostępnienia narzędzia, ale możemy uzyskać potrzebne informacje, używając pkgutil do wyświetlania informacji o zainstalowanych pakietach.

Po pierwsze, pkgutil --pkgs wyświetli listę wszystkich zainstalowanych pakietów. Porównaj wyjście z powyższej listy pakietów.

pkgutil --info wyświetli informacje o zainstalowanym pakiecie; na przykład:

$ pkgutil --info com.apple.pkg.clang 
package-id: com.apple.pkg.clang 
version: 4.3.0.0.1.1249367152 
volume:/
location:/
install-time: 1342021874 
groups: com.apple.FindSystemFiles.pkg-group com.apple.DevToolsBoth.pkg-group com.apple.DevToolsNonRelocatableShared.pkg-group 

pkgutil --files wyświetli zawartość zainstalowanego pakietu, w stosunku do volume i location pól podanych przez pkgutil --info. Ponieważ ścieżki bezwzględne nie są używane, nie można po prostu potokować wyniku tej komendy do xargs rm -f, aby usunąć pliki pakietu; musisz samodzielnie naprawić ścieżki, być może z czymś takim, jak pkgutil --files com.example.pkgname | while read line; do rm -f "/install_location/$line"; done.

Po usunięciu plików pakietu, należy uruchomić pkgutil --forget, aby usunąć informacje o zainstalowanym pakiecie z bazy danych pakietów.

To powinien powiem, że powinieneś być bardzo ostrożny, jeśli spróbujesz tego: jesteś jedną literówką z powodu tak dużego wkręcenia systemu, że będziesz musiał go przeinstalować, nie mówiąc już o swoich cennych dane!

pkgutil ma kilka innych przydatnych opcji do sprawdzenia, czy wszystkie pliki pakietu są obecne i do przywrócenia ich uprawnień; szczegółowe informacje można znaleźć na stronie its manual page.

Zasadniczo będzie to działać w przypadku każdego pakietu, należy jednak pamiętać, że niektóre pakiety mogą mieć osadzone skrypty uruchamiane po zainstalowaniu pakietu; oczywiście, samo usunięcie plików pakietu nie spowoduje usunięcia wszystkich śladów pakietu z twojego systemu. Musisz wyodrębnić zawartość pakietu i przeczytać kod źródłowy skryptu, a następnie zdecydować, jak najlepiej cofnąć efekty działania skryptu.

1

Miałem podobny problem: nie mogłem uruchomić "make" po uaktualnieniu do Xcode 4.3. Aby to naprawić, po prostu ustawić mój zmiennej PATH do obejmują:

/Applications/Xcode.app/Contents/Developer/usr/bin 
/Applications/Xcode.app/Contents/Developer/Tools 

Kiedyś miałem to skonfigurować, zastępując moje stare wpisy ŚCIEŻKA nawiązujące do/programista, mogę uruchomić „make” z wiersza polecenia ponownie.

+2

Nie chodzi o uruchamianie "make" w wierszu poleceń ... Chcę te narzędzia wymienione z odpowiednią dokumentacją, a także sposób tworzenia projektów xcode z wiersza poleceń. – Alerty

+0

Szukałem generowania folderów * .xcodeproj z wiersza poleceń, ale ostatecznie stworzyłem nowy projekt z Xcode. Polecenie do zbudowania projektu to: 'xcodebuild -configuration Debug' dla wersji debugowania (oczywiście) i' xcodebuild -configuration Release' dla wersji Release. Jeśli chodzi o dokumentację, najlepsze, co mogę ci dać, to 'man xcodebuild'. – S2VpdGgA

+0

To jest to, chociaż nie ma żadnego narzędzia wiersza poleceń z Apple, według mojej wiedzy, który tworzy projekt xcode. Aby zbudować projekt, potrzebujesz pliku projektu. – Alerty

Powiązane problemy