Menginstal Xcode melalui baris perintah


27

Saya adalah pengguna Linux dan belum pernah menggunakan OSX sebelumnya. Seseorang meminta bantuan saya untuk menginstal beberapa perangkat lunak pada server OSX "Lion". Saya memintanya untuk memberi saya shell SSH, dengan asumsi itu sudah cukup. Namun hal-hal lebih rumit daripada yang saya pikirkan.

Saya ingin menginstal homebrew, tetapi tidak menginstal karena tidak ada cc pada sistem. Setelah beberapa google, saya kira saya perlu menginstal Xcode. Saya baru saja mengunduh xcode 4.5 dari situs pengembang apel, dan memasangnya di sistem. Ini berisi direktori Xcode.appdengan banyak barang di dalamnya. Bagaimana saya pergi dari sini?

Bisakah saya menginstal Xcode tanpa akses fisik ke mesin? Yang saya inginkan adalah menjalankan homebrew pada saat ini.

Jawaban:


25

Anda mungkin lebih baik hanya menginstal Alat Baris Perintah Pengembang mandiri (yang termasuk gccdan item standar alat pengembang lainnya). Anda bisa mendapatkannya dari Unduhan Pengembang Apple (yang membutuhkan akun pengembang gratis). Sayangnya tidak ada tautan langsung, tetapi hanya mencari alat baris perintah dan Anda akan menemukannya (perhatikan bahwa ada unduhan yang berbeda untuk Lion dan Mountain Lion).

Unduhan adalah DMG. Gunung itu, dan Anda akan menemukan sebuah .mpkgfile, yang dapat Anda instal melalui baris perintah : sudo installer -pkg "Command Line Tools.mpkg" -target /.


+1 untuk menjaga paket telanjang dalam pikiran. +3 untuk menginstal dari terminal - Saya akan mengedit jawaban saya sedikit karena Xcode sudah diunduh, alat ada di Xcode.app/Contents/Developer dan dapat dengan mudah disalin ke jalur yang nyaman untuk menjalankan.
bmike

Ya, saya yakin bagaimana / jika alat yang termasuk dalam paket Xcode berbeda dari unduhan mandiri. Agaknya agak berbeda mengingat Xcode memiliki opsi alat unduhan juga. Bagaimanapun, jika Anda mulai dari awal dan ingin menginstal "bersih" melakukan hal-hal dari baris perintah saja, ini mungkin cara yang harus dilakukan.
Robmathers

2
Saya percaya terakhir kali saya memeriksa, alat-alat Xcode memiliki header tambahan dan hal-hal untuk melayani bangunan GUI dan alat-alat Command Line dilucuti sedikit / dibangun secara terpisah dengan bendera yang sedikit berbeda saat dikompilasi, tetapi juga umumnya versi yang sama dengan Xcode utama rilis. Dalam praktiknya, saya belum pernah melihat perbedaan yang diperhatikan apalagi masalah. AFAIK, Xcode menarik turun paket yang Anda sebutkan dan menginstalnya sehingga Anda memiliki keduanya - versi xcrun dari toolset dan versi / usr / bin dari toolset.
bmike

Ya itu berhasil. Saya baru saja menginstal minuman. Ada kesalahan ketik dalam posting Anda, itu harus membaca sudo installerbukan sudo install.
Jeroen

@ Joen terima kasih untuk itu, diperbaiki. Tidak yakin bagaimana saya melewatkannya.
Robmathers

10

Saya baru-baru ini harus menginstal alat baris perintah Xcode di Mountain Lion melalui SSH. Begini cara saya melakukannya.

  1. Jika Anda tidak memiliki akun pengembang Apple gratis, daftar untuk itu

  2. Masuk ke https://developer.apple.com/downloads

  3. Unduh "Command Line Tools for Xcode" yang sesuai untuk versi OSX Anda

    Bagi saya, itu adalah "Command Line Tools (OS X Mountain Lion) untuk Xcode - April 2014"

  4. Salin file dmg ke remote Anda

    Pada perintah berikut, saya menggunakan scp untuk secara aman menyalin file dari komputer lokal saya ke remote bernamaremote

    $ scp ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg remote:Downloads/
  5. ssh ke kendali jarak jauh Anda

    $ ssh remote
  6. me-mount file dmg pada remote

    Di sini, saya menggunakan hdiutil untuk me-mount gambar

    $ hdiutil attach ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg
  7. instal paket yang ada di dmg

    Di sini, penginstal harus dijalankan sudokarena paket ini harus diinstal pada sistem file root

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

    $ hdiutil detach /Volumes/Command\ Line\ Tools\ \(Mountain\ Lion\)
  9. hapus file dmg dari remote; pilihan

    Saya tidak melihat ada gunanya menyimpannya, tetapi Anda bisa jika mau.

    $ rm ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg


4

Ini cukup tua, tetapi bagi siapa saja yang datang dengan ini, ada yang sederhana, built-in, satu-liner untuk menginstal Alat-alat Baris Perintah tanpa perlu mengunduh .dmgatau .pkgs. Ini tersedia bahkan pada instalasi baru macOS.

Perintahnya adalah:

xcode-select --install

Menurut manhalaman:

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

Tampaknya sudah tersedia sejak Xcode 3.0 ada (OS X 10.5).


1
Saya melihat tidak ada - instal saklar di xcode-pilih versi 2311, halaman manual dari 16 November 2011, Mac OS X 10.8.5.
Martin Dorey

Saya juga tidak di xcode-pilih versi 2349, halaman manual dari 08 Maret 2016.
user44400

1

Semua alat yang Anda butuhkan ada di Xcode.app/Contents/Developer dan jika Anda memiliki folder itu, Anda selesai menginstal karena aplikasi OS X dapat dijalankan dari mana saja.

Jika Anda ingin menggunakan Xcode, cukup klik pada ikon atau open -apath ke folder Xcode.app dan Anda akan meluncurkan aplikasi. Kebanyakan orang memindahkan folder Xcode.app ke / Aplikasi (atau ~ / Aplikasi) untuk "menginstalnya"

Oh - ketika Anda menjalankan Xcode Anda akan ingin membuka preferensi, buka panel Downloads dan instal alat baris perintah yang berdiri sendiri. Ini menempatkan kompilasi toolchain di / usr / bin sehingga Anda tidak perlu menggunakan xcrun --find gccdan xcrun --find makeuntuk menemukan path ke alat relatif ke mana pun Anda menjatuhkan folder Xcode.app.


Namun demikian, Command Line Utilities juga diperlukan untuk membuat homebrew bekerja. Mungkin paling mudah untuk meminta pemilik sistem OS X untuk menginstal barang-barang untuk Anda (atau terhubung melalui VNC dan melakukannya sendiri)
nohillside

1

Saya menemukan bahwa Homebrew menginstal Alat Baris Perintah Xcode juga.

Keuntungan besar bagi saya adalah saya dapat melakukannya dari terminal (bahkan ssh) dan installer tidak menampilkan UI-Pop-Window , yang menghalangi saya untuk digunakan dengan terminal jarak jauh.

Diuji dengan Homebrew versi 2.1.10 (git revisi b7d38f; komit terakhir 2019-08-12).

Bagi saya langkah itu jauh lebih mudah, kemudian mengunduh paket dmg dari apple dan menyalinnya dengan ssh ke mesin target.

Perintah pemasang akan menghasilkan (disalin dari situs web)

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

output berikut:

==> 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.

dan

...
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
...


-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

Ganti Xcode "{{osx_xcode_file}}" dengan versi / nama file yang telah Anda unduh.

Instal 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

Secara opsional Hapus XCODE sebelumnya

rm /Applications/Xcode.app menyebabkan masalah yang tidak wajar

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

Simpan setiap file sebagai scriptname.scpt

jalankan: / usr / bin / osascript scriptname.scpt Jalankan sebagai pengguna konsol (BUKAN ROOT)


Bagaimana Anda bisa menjalankan ini melalui ssh? Juga bagaimana ini lebih baik daripada alat pengembang hanya baris perintah?
user151019

Hai Mark, kami memiliki persyaratan khusus untuk menginstal xcode lengkap di tempatnya. ssh user @ hostname "onascript <path / to / file> /myscript.scpt
casibbald
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.