Instalowanie Xcode za pomocą wiersza poleceń

27

Jestem użytkownikiem systemu Linux i nigdy wcześniej nie korzystałem z systemu OSX. Ktoś poprosił mnie o pomoc w instalacji oprogramowania na serwerze „Lion” OSX. Poprosiłem go, aby dał mi powłokę SSH, zakładając, że to wystarczy. Jednak sprawy są trudniejsze niż myślałem.

Chciałem zainstalować homebrew, ale nie został zainstalowany, ponieważ w systemie nie było CC. Po pewnym google, chyba muszę zainstalować Xcode. Właśnie pobrałem xcode 4.5 ze strony programistów Apple i zamontowałem go w systemie. Zawiera katalog Xcode.appz mnóstwem rzeczy. Jak mogę stąd wyjść?

Czy mogę zainstalować Xcode bez fizycznego dostępu do urządzenia? Wszystko, czego naprawdę chcę, to uruchomić homebrew w tym momencie.

Jeroen
źródło

Odpowiedzi:

25

Lepiej jest po prostu zainstalować samodzielne narzędzia wiersza polecenia programisty (w tym gcci inne standardowe elementy łańcucha narzędzi programisty). Możesz go pobrać z witryny Apple do pobrania dla programistów (która wymaga bezpłatnego konta programisty). Niestety nie ma bezpośredniego linku, ale po prostu wyszukaj narzędzia wiersza polecenia i znajdziesz je (zwróć uwagę, że istnieją różne pliki do pobrania dla Lion i Mountain Lion).

Pobieranie jest DMG. Zamontować to i znajdziesz .mpkgplik, który można zainstalować za pomocą wiersza poleceń : sudo installer -pkg "Command Line Tools.mpkg" -target /.

robmathers
źródło
+1 za zapamiętanie nagiego pakietu. +3 do instalacji z terminala - zredaguję nieco moją odpowiedź, ponieważ Xcode jest już pobrany, narzędzia znajdują się w Xcode.app/Contents/Developer i można je łatwo skopiować na dogodną ścieżkę do uruchomienia.
bmike
Tak, jestem pewien, jak / jeśli narzędzia zawarte w pakiecie Xcode różnią się od samodzielnego pobierania. Przypuszczalnie nieco inny, biorąc pod uwagę, że Xcode ma również opcję narzędzi do pobierania. W każdym razie, jeśli zaczynasz od zera i chcesz mieć „czystą” instalację, wykonując czynności tylko z wiersza poleceń, prawdopodobnie jest to właściwy sposób.
robmathers,
2
Wierzę, że kiedy ostatni raz sprawdzałem, narzędzia Xcode mają dodatkowe nagłówki i inne rzeczy do obsługi budynku GUI, a narzędzia wiersza poleceń są nieco rozbierane / budowane osobno z nieco innymi flagami podczas kompilacji, ale ogólnie taka sama wersja jak główny Xcode wydania. W praktyce nigdy nie widziałem, aby różnice były zauważane, a tym bardziej nieważne. AFAIK, Xcode usuwa wspomniany pakiet i instaluje go, dzięki czemu masz zarówno wersję xcrun zestawu narzędzi, jak i wersję / usr / bin zestawu narzędzi.
bmike
Tak, zadziałało. Właśnie zainstalowałem napar. W poście znajduje się literówka, którą należy przeczytać sudo installerzamiast sudo install.
Jeroen,
@Jeroen dzięki za to naprawione. Nie jestem pewien, jak mi tego brakowało.
robmathers,
10

Niedawno musiałem zainstalować narzędzia wiersza polecenia Xcode w Mountain Lion przez SSH. Oto jak to zrobiłem.

  1. Jeśli nie masz bezpłatnego konta programisty Apple, zarejestruj je

  2. Zaloguj się do https://developer.apple.com/downloads

  3. Pobierz „Narzędzia wiersza poleceń dla Xcode” odpowiednie dla twojej wersji OSX

    Dla mnie było to „Narzędzia wiersza poleceń (OS X Mountain Lion) dla Xcode - kwiecień 2014”

  4. Skopiuj plik dmg do pilota

    W poniższym poleceniu używam scp, aby bezpiecznie skopiować plik z mojego komputera lokalnego na zdalny o nazwieremote

    $ scp ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg remote:Downloads/
  5. ssh do twojego pilota

    $ ssh remote
  6. zamontuj plik dmg na pilocie

    Tutaj używam hdiutil do zamontowania obrazu

    $ hdiutil attach ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg
  7. zainstaluj pakiet zawarty w dmg

    W tym przypadku należy uruchomić instalator , sudoponieważ ten pakiet musi być zainstalowany w głównym systemie plików

    $ cd /Volumes/Command\ Line\ Tools\ \(Mountain\ Lion\)
    $ sudo installer -pkg Command\ Line\ Tools\ \(Mountain\ Lion\).mpkg -target /
    
  8. odmontuj plik dmg

    $ hdiutil detach /Volumes/Command\ Line\ Tools\ \(Mountain\ Lion\)
  9. usuń plik dmg ze zdalnego; opcjonalny

    Nie widzę żadnego celu, żeby to utrzymać, ale możesz, jeśli chcesz.

    $ rm ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg
Dziękuję Ci
źródło
adcdownload.apple.com/Developer_Tools/Xcode_8.3/Xcode_8.3.xip nie jest już rozszerzeniem .dmg. stackoverflow.com/a/39489446/18096 wyjaśnia, jak złamać tę nakrętkę.
Martin Dorey
4

To jest dość stary, ale dla każdego, kto przychodzi przez to, że jest prosty, wbudowany, jedna wykładziny do zainstalowania narzędzia wiersza poleceń bez konieczności pobierania żadnego .dmglub .pkgs. Jest to dostępne nawet przy nowej instalacji systemu macOS.

Polecenie to:

xcode-select --install

Według manstrony:

Opens a user interface dialog to request automatic installation of the command line developer tools.

Wygląda na to, że był dostępny od Xcode 3.0 (OS X 10.5).

janka102
źródło
1
Nie widzę przełącznika --install w wersji x11-select w wersji 2311, strona podręcznika użytkownika z 16 listopada 2011 r., Mac OS X 10.8.5.
Martin Dorey,
Nie robię tego również w wersji
x49
1

Potrzebne narzędzia znajdują się w Xcode.app/Contents/Developer, a jeśli masz ten folder, instalacja jest zakończona, ponieważ aplikacje OS X można uruchomić z dowolnego miejsca.

Jeśli chcesz użyć Xcode, po prostu kliknij ikonę lub open -aścieżkę do folderu Xcode.app, a uruchomisz aplikację. Większość osób przenosi folder Xcode.app do katalogu / Applications (lub ~ / Applications), aby go „zainstalować”

Och - po uruchomieniu Xcode będziesz chciał otworzyć preferencje, przejdź do panelu Pobrane i zainstaluj samodzielne narzędzia wiersza poleceń. Spowoduje to umieszczenie łańcucha narzędzi kompilacji w / usr / bin, dzięki czemu nie musisz używać xcrun --find gcci xcrun --find makelokalizować ścieżki do narzędzi względem miejsca, w którym upuściłeś folder Xcode.app.

bmike
źródło
Niemniej jednak narzędzia wiersza polecenia są również potrzebne, aby homebrew mógł działać. Prawdopodobnie najłatwiej jest poprosić właściciela systemu OS X o zainstalowanie rzeczy dla ciebie (lub połączenie przez VNC i zrób to sam)
nohillside
1

Dowiedziałem się, że Homebrew również instaluje Narzędzia wiersza poleceń Xcode .

Dużą zaletą jest dla mnie to, że mogę to zrobić z terminala (nawet ssh), a instalator nie wyświetla okna Pop-Window , które blokuje mi korzystanie ze zdalnego terminala.

Testowane z wersją Homebrew 2.1.10 (git wersja b7d38f; ostatnie zatwierdzenie 2019-08-12).

Dla mnie te kroki były znacznie łatwiejsze, niż pobranie pakietu dmg z Apple i skopiowanie go przez ssh na maszynę docelową.

Wygeneruje polecenie instalatora (skopiowane ze strony internetowej)

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

następujące dane wyjściowe:

==> This script will install:
/usr/local/bin/brew
/usr/local/share/doc/homebrew
/usr/local/share/man/man1/brew.1
/usr/local/share/zsh/site-functions/_brew
/usr/local/etc/bash_completion.d/brew
/usr/local/Homebrew
==> The following new directories will be created:
/usr/local/bin
/usr/local/etc
/usr/local/include
/usr/local/lib
/usr/local/sbin
/usr/local/share
/usr/local/var
/usr/local/opt
/usr/local/share/zsh
/usr/local/share/zsh/site-functions
/usr/local/var/homebrew
/usr/local/var/homebrew/linked
/usr/local/Cellar
/usr/local/Caskroom
/usr/local/Homebrew
/usr/local/Frameworks
==> The Xcode Command Line Tools will be installed.

i

...
Downloading Command Line Tools (macOS Mojave version 10.14) for Xcode
Downloaded Command Line Tools (macOS Mojave version 10.14) for Xcode
Installing Command Line Tools (macOS Mojave version 10.14) for Xcode
Done with Command Line Tools (macOS Mojave version 10.14) for Xcode
...
KargWare
źródło
-1

MOUNT XCODE DMG

tell application "Finder" to open ("Macintosh HD")
tell application "Finder"
    activate
    set target of Finder window 1 to folder "Downloads" of folder "vagrant" of folder "Users" of startup disk
    open document file "{{ osx_xcode_file }}" of folder "Downloads" of folder "vagrant" of folder "Users" of startup disk
end tell

Zastąp Xcode „{{osx_xcode_file}}” pobraną wersją / nazwą pliku.

Zainstaluj XCODE

tell application "Finder"
    activate "Xcode"
    with timeout of 1000000 seconds
        copy file "Xcode:Xcode.app" to folder "Macintosh HD:Applications"
    end timeout
end tell

Opcjonalnie Usuń poprzedni XCODE

rm /Applications/Xcode.app powoduje niepotrzebne problemy

tell application "Finder"
    activate "Applications"
    considering case
        with timeout of 1000000 seconds
            set sourceFolder to POSIX file "/Applications/Xcode.app"
            try
                delete sourceFolder
            on error errorMessage number errorNumber
                set _error to errorMessage
                set _errorNum to errorNumber
            end try
        end timeout
    end considering
end tell

Zapisz każdy plik jako skryptname.scpt

run: / usr / bin / osascript scriptname.scpt Uruchom jako użytkownik konsoli (NIE ROOT)

casibbald
źródło
Jak możesz to uruchomić przez ssh? W jaki sposób jest to lepsze niż narzędzia programistyczne przeznaczone tylko dla wiersza poleceń?
user151019,
Cześć Mark, mamy specyficzny wymóg, aby zainstalować pełną wersję xcode. ssh użytkownik @ nazwa hosta "onascript <ścieżka / do / pliku> /myscript.scpt
casibbald