xcode-pilih kesalahan direktori pengembang aktif

682

Lihat kesalahan berikut saat menjalankan npm installyang diperlukan node-gyp... tetapi bisa dipicu oleh apa pun yang membutuhkan xcode-select.

xcode-select: error: alat 'xcodebuild' memerlukan Xcode, tetapi direktori pengembang aktif '/ Library / Developer / CommandLineTools' adalah contoh alat baris perintah

Apa masalahnya?

tjmehta
sumber
5
Bekerja untuk YOSEMITE juga
tjmehta
12
Bekerja untuk El Capitan juga
tjmehta
6
Bekerja untuk Sierra juga
tjmehta
5
Bekerja untuk High Sierra juga
tjmehta
6
Bekerja untuk Mojave juga
Zohair

Jawaban:

1291

Masalah ini terjadi ketika xcode-selectdirektori pengembang menunjuk ke /Library/Developer/CommandLineTools, ketika Xcode reguler penuh diperlukan (terjadi ketika CommandLineTools diinstal setelah Xcode)

Larutan:

  1. Instal Xcode (dapatkan dari https://appstore.com/mac/apple/xcode ) jika Anda belum memilikinya.
  2. Terima Syarat dan Ketentuan.
  3. Pastikan aplikasi Xcode ada di /Applicationsdirektori (BUKAN /Users/{user}/Applications).
  4. Arahkan xcode-selectke direktori Pengembang aplikasi Xcode menggunakan perintah berikut:
    sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

Catatan: Pastikan jalur aplikasi Xcode Anda benar.

  • Xcode: /Applications/Xcode.app/Contents/Developer
  • Xcode-beta: /Applications/Xcode-beta.app/Contents/Developer
tjmehta
sumber
@qodeninja Kemudian ganti /Applications/Xcode5-DP4.appdengan jalur yang benar, saya akan berasumsi.
Max Nanasy
@ MaxNanasy maksud saya itu jelas. Tapi tidak, itu tidak berhasil. Saya harus menghapus dan menginstal ulang xcode agar dapat berfungsi lagi
qodeninja
9
Dengan Xcode 6 Beta ini berfungsi. Terima kasih! sudo xcode-select -switch /Applications/Xcode6-Beta.app/Contents/Developer/
jpincheira
1
Saya tidak perlu melakukan langkah 2. Menginstal Xcode sudah cukup. :)
Ryan Heathcote
11
macOS High Sierra 10.13 , saya sudah menginstal Xcode 9.2 dan menghadapi masalah yang sama setelah menginstal carthage . Lakukan saja langkah 4 dan hanya itu!
RAM237
162

Solusi lain untuk mereka yang tidak ingin menginstal Xcode:

  1. Instal Alat Baris Perintah (jika belum):

    xcode-select --install

  2. Ubah direktori aktif:

    sudo xcode-select -switch /Library/Developer/CommandLineTools

Ini bekerja untuk saya (git).

Indamix
sumber
23
Saya lebih suka solusi ini daripada menginstal Xcode, namun sepertinya Anda tidak dapat mengunduh xcode-selectdari Apple lebih lama: cl.ly/image/2T0u2f2D471a/content
6
Saya pikir saya sudah menginstal Command Line Tools, jadi ini tidak akan memperbaiki apa pun.
6
Jadi, apakah satu-satunya cara untuk mendapatkan yang dapat digunakan xcodebuilduntuk menginstal seluruh Xcode? :-(
50
Jawaban ini sepertinya salah . Intinya adalah bahwa 'xcodebuild' memerlukan Xcode , yaitu instalasi penuh Xcode, atau CommandLineTools. Mengujinya di sini, beralih ke CommandLineTools tidak menghentikan kesalahan, juga tidak.
mikemaccana
21
Jawaban ini tidak lagi benar. Pada Mei 2015, ketika menggunakan Command Line Tools untuk OSX 10.10 (Yosemite), perintah xcodebuild tidak lagi berfungsi tanpa xcode lengkap diinstal.
HipsterZipster
151

Saya mengalami masalah saat mencoba menginstal paket menggunakan npm. Saya mendapatkan kesalahan: "sudo xcode-select -s /Applications//Xcode.app/Contents/Developer/"

Untuk memperbaikinya

  • Saya membuka Xcode.
  • Preferensi
  • Lokasi
  • Memilih Alat Command Liner: Xcode 6.1.1

Sekarang ketika menginstal paket dengan npm saya tidak lagi mendapatkan kesalahan.

jay.tech66
sumber
1
Memperbaiki pengaturan Robo VM.
Sensei
107

Xcode-> Preferensi-> Lokasi-> alat baris perintah

tangkapan layar

Pilih opsi: Xcode 8.x

FranklinA
sumber
1
Klik tautan dan lihat gambar. Solusi untuk masalah ini tidak rumit.
FranklinA
Saya telah menginstal 8 versi xcode yang sedang membuat dan mengeluarkan tetapi yang di atas akan menyelesaikan masalah tambang. Anda adalah penyelamat hidup;)
ahsan
Ini adalah satu-satunya hal yang bekerja untuk saya ketika saya mencoba menginstal 2 versi XCode. Mencoba xcode-selectterus mengatakan "kesalahan: direktori pengembang tidak valid"!
mc01
Ini adalah solusi yang saya butuhkan. Tidak yakin mengapa opsi Alat Baris perintah itu tidak disetel. Tapi begitu saya atur, itu menyelesaikan masalah saya. Terima kasih.
jdavis
50

Cukup jalankan sudo xcode-select -ryang harus secara otomatis mengatur ulang jalan.

 -r, --reset
              Unsets any user-specified developer directory, so that the developer directory will be found via the default search mechanism. This command must  be
              run with superuser permissions (see sudo(8)), and will affect all users on the system.
chunkyguy
sumber
bertanya-tanya apa yang akan terjadi jika saya menghapus xcode dan mengikuti langkah-langkah di atas sejak saya menginstal CLI setelah xcode. Apakah itu mengacaukan proyek aplikasi iOS saya yang ada?
Gel
Ini bekerja untuk saya di osx 10.14.4 dengan xcode 11.3.1
Rafael Khan
10

Untuk berjaga-jaga jika Anda menggunakan xcode beta:

sudo xcode-select -s /Applications/Xcode-Beta.app/Contents/Developer
Andrey Deineko
sumber
9

Saya harus menjalankan ini dulu

sudo xcode-select --reset

kemudian

sudo xcode-select -switch /Library/Developer/CommandLineTools

dan kemudian berhasil.

Hamoon
sumber
5
Bagi saya masalah sudah diperbaiki setelah menjalankan perintah pertama. Menjalankan perintah kedua memecahkan banyak hal lagi. Jadi hanya yang pertama (dalam kasus saya). Terima kasih.
Nate
Saya kedua itu, hanya menjalankan --resetmemperbaiki masalah
Peter Lamberg
7
  1. Unduh Xcode dari App Store.

  2. Pergi ke preferensi Xcode / Lokasi / CommandlineTools

    Anda hanya perlu mengaturnya ke versi Xcode. Secara otomatis menunjuk ke '/Application/Xcode.app'

Rahul Shenoy
sumber
3

Instal Xcode dari App Store. Setelah menginstal, jalankan xcodebuild dengan hak istimewa root sudo xcodebuilddan terima bahasanya. Setelah ini npm install bcryptbekerja seperti pesona!

sandeepkohli
sumber
3

Tanpa Xcode: buat file /usr/local/bin/xcodebuilddengan konten untuk menipu XcodeSelect

  #!/bin/bash
  exit 0

chmod +x /usr/local/bin/xcodebuild

javamonk
sumber
Saya harus mengatakan saya mengalami masalah dengan node-gyp karena beberapa alasan berjalan xcodebuildketika saya hanya menginstal CLT. Saya lebih suka tidak menginstal Xcode hanya untuk menginstal beberapa ekstensi asli tidak ada hubungannya dengan pengembangan Mac dan iOS, jadi saya sangat ingin mencoba teknik ini untuk dasarnya hanya menutup kesalahan. Apakah Anda tahu jika ada akibat dari melakukan ini? Saya hanya bisa membayangkan bahwa node-gyp memanggil xcodebuilduntuk suatu alasan, dan dengan melakukan exit 0kita melanggar toolchain untuk build tertentu, tapi saya tidak yakin, karena saya tidak tahu mengapa itu akan digunakan xcodebuilddalam tempat pertama. Ada ide?
alexrussell
1
Saya mencoba ini, sayangnya tidak ada bedanya. Saya benar-benar tidak ingin menginstal XCode - ini hanya beberapa BS pemasaran Apple yang memaksa Anda untuk menginstalnya.
Alex
2

Jika Anda menggunakan Xcode beta, jalankan

sudo xcode-select --switch /Applications/Xcode-beta.app/Contents/Developer 

dari pada

sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
M.Sobhy
sumber
2

Saya dapat mengatasi kesalahan ini tanpa menginstal aplikasi Xcode lengkap. Anda harus menginstal alat baris perintah xcode.

Dari sini :

  1. $ cd /usr/bin
  2. $ sudo mv xcodebuild xcodebuild.orig (Cadangan untuk berjaga-jaga)
  3. $ vim xcodebuild
  4. Rekatkan yang berikut ini:
#!/bin/bash
if [[ $1 == '-version' ]]; then
  echo "Xcode 10.2.1"
  echo "Build version 10E1001"
else
  /usr/bin/xcodebuild.bak $@
fi
  1. $ sudo chmod +x xcodebuild
JBis
sumber
Jawaban bagus. Juga menghargai Anda mereferensikan sumber aslinya. :)
Monomeeth
1

XCode2: sudo xcode-select -s / Applications / Xcode \ 2.app/Contents/Developer

Perhatikan "\" untuk keluar dari ruang

turibbio
sumber
1

Saya mempunyai dua contoh Xcode yang diinstal xcode.app dan xcode-beta.app Ketika saya mencoba membuat build dengan netbeans, itu menunjukkan kepada saya kesalahan "versi xcode yang didukung dan alat-alat baris perintah tidak menemukan netbeans"

Saya mengikuti langkah-langkah berikut:

  1. "xcode-select --print-path" sama dengan "/Applications/Xcode.app/Contents/Developer"
  2. "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform" ada
  3. "xcodebuild -version" dimulai dengan "Xcode"

setelah 1 saya menemukan bahwa itu menunjuk saya ke xcode-beta.app

jadi di sini adalah solusi yang bekerja seperti pesona:

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

Shashank Saxena
sumber
1

Untuk konteksnya, hari ini adalah 28 Januari 2019 .

Di Mac saya, saya melakukan dua hal untuk mengatasi masalah ini:

  1. Jalankan perintah berikut di terminal Anda:
    sudo xcode-select --install

  2. Mulai ulang Mac Anda.

Sampai saya me-restart komputer, masalah terus terjadi di Android Studio saya. Setelah reboot, itu berfungsi dengan baik. Perhatikan juga bahwa saya tidak menjalankan --switchperintah apa pun seperti yang dilakukan orang lain. Saya harap ini membantu.

Steve
sumber
1

Saya mengalami masalah yang sama dalam sierra tinggi. menjalankan perintah berikut menyelesaikannya dan menjelajahi npm -g - npm menginstal node-gyp @ latest

Luja Shrestha
sumber
1
Ini bekerja untuk saya, kecuali saya menginstal ulang dengannpm -g install node-gyp@latest
ty.
1

Ikuti langkah-langkah di bawah ini:

  1. Versi terbaru Xcode dapat diunduh dari https://developer.apple.com/xcode/download/
  2. Ini akan diunduh di 'Unduhan' kecuali ditentukan lain. Pastikan untuk memeriksa jalur tempat Anda mengunduh dan mengekstrak Xcode
  3. Sekarang tidak seperti aplikasi yang diunduh lainnya, pada ekstraksi, Xcode tidak memberikan opsi untuk memindahkannya ke Aplikasi
  4. Catat XCODE-ACTUAL-LOCATION atau pindahkan ke Aplikasi
  5. Perhatikan jika Anda telah mengunduh Xcode atau Xcode-beta

Berdasarkan 4 dan 5, jalankan salah satu perintah (Jangan jalankan semuanya tanpa membaca deskripsi di atas):

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer
sudo xcode-select -s /[XCODE-ACTUAL-LOCATION]/Xcode.app/Contents/Developer
sudo xcode-select -s /[XCODE-ACTUAL-LOCATION]/Xcode-beta.app/Contents/Developer
Nikhil Maheshwari
sumber
0
sudo xcode-select -s /Applications/Xcode 10.app/Contents/Developer

languoguangs-iMac:/ languoguang$ sudo xcode-select -s /Applications/Xcode 10.app/Contents/Developer
xcode-select: error: invalid argument '10.app/Contents/Developer'
Usage: xcode-select [options]

Print or change the path to the active developer directory. This directory
controls which tools are used for the Xcode command line tools (for example, 
xcodebuild) as well as the BSD development commands (such as cc and make).

Options:
  -h, --help                  print this help message and exit
  -p, --print-path            print the path of the active developer directory
  -s <path>, --switch <path>  set the path for the active developer directory
  --install                   open a dialog for installation of the command line developer tools
  -v, --version               print the xcode-select version
  -r, --reset                 reset to the default command line tools path
languoguangs-iMac:/ languoguang$ sudo xcode-select -s "/Applications/Xcode 10.app/Contents/Developer"

karena nama Xcode saya di Aplikasi adalah "Xcode 10",

sudo xcode-select -s "/Applications/Xcode 10.app/Contents/Developer"

bekerja.

Languoguang
sumber
0

Dalam hal ini,

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer 

tidak berfungsi karena Xcode saya memiliki nama khusus. mis. Xcode_11.2.0_beta_2_stackoverflow.app

cd /applications
ls

Lalu saya menemukan nama Xcode saya, lalu ganti dengan

sudo xcode-select -s /Applications/{myXcodeName}.app/Contents/Developer 

Ini berhasil untuk saya.

Jaeseok Jay An
sumber
0

Tak satu pun dari yang di atas bekerja untuk saya. Saya awalnya menginstal Command Line Tools secara terpisah, dan kemudian semua Xcode. Apa yang berhasil bagi saya adalah menghapus Alat Command Line seperti yang ditunjukkan di sini . Kemudian, ketika mencoba menjalankan xcode-selectlagi, saya diminta untuk menginstalnya kembali.

* Omong-omong, alasan utama mengapa saya menemukan utas ini adalah karena saya telah menginstal beberapa perpustakaan (khususnya gcc) dengan macports, mungkin menggunakan Command Line Tools yang lama, dan kemudian saya menginstal Xcode lengkap di tengah pengembangan. Jadi, untuk kasus saya, saya harus menginstal ulang macportssetelah menghapus Alat Baris Perintah yang berdiri sendiri, menginstalnya kembali, menginstal ulang gcc, dan kemudian kompilasi saya berhasil.

Legel
sumber
0

Hanya ada dua langkah yang diperlukan, dan XCode.app lengkap tidak diperlukan sama sekali:

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

Pada titik ini dialog "Instalasi Softwre" muncul:

masukkan deskripsi gambar di sini

Itu dia!

Mark Richman
sumber
0

Instal ulang xcode-select sederhana

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install
Semir Hodzic
sumber