xcode-select lỗi thư mục nhà phát triển hoạt động


681

Đã thấy lỗi sau khi chạy một npm installyêu cầu node-gyp... nhưng có thể được kích hoạt bởi bất cứ điều gì cần thiết xcode-select.

xcode-select: error: tool 'xcodebuild' yêu cầu Xcode, nhưng thư mục nhà phát triển hoạt động '/ Library / Developer / CommandLineTools' là một ví dụ về công cụ dòng lệnh

Vấn đề là gì?


5
Hoạt động cho YOSEMITE cũng vậy
tjmehta

12
Làm việc cho El Capitan cũng vậy
tjmehta

6
Hoạt động cho Sierra cũng vậy
tjmehta

5
Hoạt động cho High Sierra cũng vậy
tjmehta

6
Hoạt động cho Mojave cũng vậy
Zohair

Câu trả lời:


1288

Sự cố này xảy ra khi xcode-selectthư mục nhà phát triển đã trỏ đến /Library/Developer/CommandLineTools, khi cần một Xcode thông thường đầy đủ (xảy ra khi CommandLineTools được cài đặt sau Xcode)

Giải pháp:

  1. Cài đặt Xcode (lấy từ https://appstore.com/mac/apple/xcode ) nếu bạn chưa có.
  2. Chấp nhận Điều khoản và Điều kiện.
  3. Đảm bảo ứng dụng Xcode nằm trong /Applicationsthư mục (KHÔNG /Users/{user}/Applications).
  4. Trỏ xcode-selecttới thư mục Nhà phát triển ứng dụng Xcode bằng lệnh sau:
    sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

Lưu ý: Đảm bảo đường dẫn ứng dụng Xcode của bạn là chính xác.

  • Xcode: /Applications/Xcode.app/Contents/Developer
  • Xcode-beta: /Applications/Xcode-beta.app/Contents/Developer

@qodeninja Sau đó thay thế /Applications/Xcode5-DP4.appbằng con đường thích hợp, tôi sẽ giả sử.
Max Nanasy

@MaxNanasy ý tôi là điều đó rõ ràng. Nhưng không, nó không hoạt động. Tôi đã phải gỡ cài đặt và cài đặt lại xcode để nó hoạt động trở lại
qodeninja

9
Với Xcode 6 Beta, điều này đã hoạt động. Cảm ơn! sudo xcode-select -switch /Applications/Xcode6-Beta.app/Contents/Developer/
jpincheira

1
Tôi không cần làm bước 2. Cài đặt Xcode là đủ. :)
Ryan Heathcote

11
macOS High Sierra 10.13 , tôi đã cài đặt Xcode 9.2 và gặp vấn đề tương tự sau khi cài đặt carthage . Chỉ cần làm bước 4 và thế là xong!
RAM237

162

Giải pháp khác cho những người không muốn cài đặt Xcode:

  1. Cài đặt công cụ dòng lệnh (nếu bạn chưa có):

    xcode-select --install

  2. Thay đổi thư mục hoạt động:

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

Điều này làm việc cho tôi (git).


23
Tôi thích giải pháp này để cài đặt Xcode, tuy nhiên có vẻ như bạn không thể tải xuống xcode-selecttừ Apple nữa: cl.ly/image/2T0u2f2D471a/content

6
Tôi nghĩ rằng tôi đã cài đặt Công cụ dòng lệnh, tuy nhiên, điều này sẽ không khắc phục được gì.

6
Vì vậy, có phải là cách duy nhất để có thể sử dụng xcodebuildđể cài đặt toàn bộ Xcode? :-(

50
Câu trả lời này có vẻ không chính xác . Toàn bộ vấn đề là 'xcodebuild' yêu cầu Xcode , nghĩa là cài đặt đầy đủ Xcode, cũng không phải CommandLineTools. Kiểm tra nó ở đây, chuyển sang CommandLineTools không dừng lỗi, cũng không.
mikemaccana

21
Câu trả lời này không còn đúng nữa. Kể từ tháng 5 năm 2015, khi sử dụng Công cụ dòng lệnh cho OSX 10.10 (Yosemite), lệnh xcodebuild không còn hoạt động nếu không cài đặt xcode đầy đủ.
HipsterZipster 15/05/2015

151

Tôi đã gặp sự cố trong khi cố gắng cài đặt các gói bằng npm. Tôi đã gặp lỗi: "sudo xcode-select -s /Appluggest//Xcode.app/Contents/Developer/"

Để sửa lỗi này

  • Tôi đã mở Xcode.
  • Sở thích
  • Địa điểm
  • Chọn công cụ lệnh Lin: Xcode 6.1.1

Bây giờ khi cài đặt gói với npm tôi không còn gặp lỗi.


1
Đã sửa lỗi thiết lập Robo VM.
Sensei

106

Xcode-> Preferences-> Locations-> công cụ dòng lệnh

ảnh chụp màn hình

Chọn tùy chọn: Xcode 8.x


1
Nhấp vào liên kết và nhìn vào hình ảnh. Giải pháp cho vấn đề này không phức tạp.
FranklinA

Tôi đã cài đặt 8 phiên bản xcode đang tạo và phát hành nhưng phiên bản trên sẽ giải quyết vấn đề của tôi. Bạn là một người cứu rỗi cuộc sống;)
ahsan

Đây là điều duy nhất hiệu quả với tôi khi tôi thử cài đặt 2 phiên bản XCode. Cố gắng xcode-selectnói "lỗi: thư mục nhà phát triển không hợp lệ"!
mc01

Đây là giải pháp tôi cần. Không chắc chắn tại sao tùy chọn Line Tools không được đặt. Nhưng một khi tôi đặt nó, nó đã giải quyết vấn đề của tôi. Cảm ơn.
jdavis

50

Đơn giản chỉ cần chạy sudo xcode-select -rmà sẽ tự động thiết lập lại đường dẫn.

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

tự hỏi điều gì sẽ xảy ra nếu tôi gỡ cài đặt xcode và làm theo các bước trên kể từ khi tôi cài đặt CLI sau xcode. Điều đó có làm xáo trộn các dự án ứng dụng iOS hiện tại của tôi không?
Gel

Điều này làm việc với tôi trên osx 10.14.4 với xcode 11.3.1
Rafael Khan

10

Chỉ trong trường hợp bạn đang sử dụng xcode beta:

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

8

Tôi phải chạy cái này trước

sudo xcode-select --reset

sau đó

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

và sau đó nó hoạt động.


5
Đối với tôi, vấn đề đã được khắc phục sau khi chạy lệnh đầu tiên. Chạy lệnh thứ hai đã phá vỡ mọi thứ một lần nữa. Vì vậy, chỉ là người đầu tiên (trong trường hợp của tôi). Cảm ơn bạn.
Nate

Tôi thứ hai, chỉ cần --resetkhắc phục sự cố
Peter Lamberg

7
  1. Tải xuống Xcode từ App Store.

  2. Chuyển đến tùy chọn Xcode / Vị trí / CommandlineTools

    Bạn chỉ cần đặt nó thành phiên bản Xcode. Nó tự động trỏ đến '/Application/Xcode.app'


3

Cài đặt Xcode từ App Store. Sau khi cài đặt chạy xcodebuild với quyền root tức là sudo xcodebuildvà chấp nhận ngôn ngữ. Sau này npm install bcryptlàm việc như một cơ duyên!


3

Không có Xcode: tạo tệp /usr/local/bin/xcodebuildcó nội dung để gian lận XcodeSelect

  #!/bin/bash
  exit 0

chmod +x /usr/local/bin/xcodebuild


Tôi phải nói rằng tôi gặp vấn đề với nút-gyp vì một số lý do chạy xcodebuildkhi tôi chỉ cài đặt CLT. Tôi không muốn cài đặt Xcode chỉ để cài đặt một số tiện ích mở rộng riêng không liên quan gì đến phát triển Mac và iOS, vì vậy tôi rất cố gắng thử kỹ thuật này để cơ bản chỉ tắt lỗi. Bạn có biết nếu có bất kỳ tác động nào của việc này không? Tôi chỉ có thể tưởng tượng rằng các nút-gyp đang kêu gọi xcodebuildmột lý do và bằng cách thực hiện việc exit 0chúng tôi phá vỡ chuỗi công cụ cho một bản dựng nhất định, nhưng tôi không chắc, vì tôi không biết tại sao nó lại được sử dụng xcodebuildtrong địa điểm đầu tiên. Có ý kiến ​​gì không?
alexrussell

1
Tôi đã thử điều này, nó không có sự khác biệt đáng tiếc. Tôi thực sự không muốn cài đặt XCode - đây chỉ là một BS tiếp thị của Apple để buộc bạn phải cài đặt nó.
Alex

2

Trong trường hợp bạn đang sử dụng Xcode beta, hãy chạy

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

thay vì

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

2

Tôi đã có thể giải quyết lỗi này mà không cần cài đặt ứng dụng Xcode đầy đủ. Tuy nhiên, bạn phải cài đặt các công cụ dòng lệnh xcode.

Từ đây :

  1. $ cd /usr/bin
  2. $ sudo mv xcodebuild xcodebuild.orig (Một bản sao lưu chỉ trong trường hợp)
  3. $ vim xcodebuild
  4. Dán như sau:
#!/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

Câu trả lời tốt đẹp. Cũng đánh giá cao bạn tham khảo các nguồn ban đầu. :)
Monomeeth

1

XCode2: sudo xcode-select -s / Ứng dụng / Xcode \ 2.app/Contents/Developer

Hãy chú ý đến "\" để thoát khỏi không gian


1

Tôi đã có hai phiên bản Xcode được cài đặt xcode.app và xcode-beta.app Khi tôi cố gắng tạo bản dựng bằng netbeans, nó cho tôi thấy lỗi "phiên bản được hỗ trợ của xcode và các công cụ dòng lệnh không tìm thấy netbeans"

Tôi đã làm theo các bước sau:

  1. "xcode-select --print-path" bằng "/Appluggest/Xcode.app/Contents/Developer"
  2. "/Appluggest/Xcode.app/Contents/Developer/Pl Platforms / iPhoneSimulator.pl platform"
  3. "Xcodebuild -version" bắt đầu bằng "Xcode"

Sau 1 tôi thấy rằng nó đang trỏ tôi đến xcode-beta.app

Vì vậy, đây là giải pháp làm việc như một cơ duyên:

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


1

Đối với bối cảnh, hôm nay là ngày 28 tháng 1 năm 2019 .

Trên máy Mac của tôi, tôi đã làm hai việc để giải quyết vấn đề này:

  1. Chạy lệnh sau trong thiết bị đầu cuối của bạn:
    sudo xcode-select --install

  2. Khởi động lại máy Mac của bạn.

Cho đến khi tôi khởi động lại máy tính, sự cố vẫn tiếp tục xảy ra trong Android Studio của tôi. Sau khi khởi động lại, nó đã hoạt động tốt. Cũng lưu ý rằng tôi đã không thực hiện bất kỳ --switchlệnh nào như những người khác đang làm. Tôi hi vọng cái này giúp được.


1

Tôi đã có cùng một vấn đề trong sierra cao. chạy lệnh sau đã giải quyết nó npm khám phá npm -g - npm cài đặt nút-gyp @ mới nhất


1
Điều này làm việc cho tôi, ngoại trừ tôi chỉ cần cài đặt lại vớinpm -g install node-gyp@latest
ty.

1

Vui lòng làm theo các bước dưới đây :

  1. Có thể tải xuống phiên bản mới nhất của Xcode từ https://developer.apple.com/xcode/doad/
  2. Nó sẽ được tải xuống trong phần 'Tải xuống' trừ khi có quy định khác. Vui lòng đảm bảo kiểm tra đường dẫn mà bạn đã tải xuống và giải nén Xcode
  3. Bây giờ không giống như các ứng dụng đã tải xuống khác, khi giải nén, Xcode không cung cấp tùy chọn để chuyển nó sang Ứng dụng
  4. Lưu ý XCODE-THỰC TẾ-VỊ TRÍ hoặc di chuyển nó đến Ứng dụng
  5. Lưu ý nếu bạn đã tải xuống Xcode hoặc Xcode-beta

Dựa trên 4 và 5, thực thi một trong các lệnh (Không thực hiện tất cả chúng mà không đọc mô tả ở trên):

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

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"

bởi vì tên Xcode của tôi trong Ứng dụng là "Xcode 10",

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

làm.


0

Trong trường hợp của tôi,

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

không hoạt động vì Xcode của tôi có một số tên đặc biệt. ví dụ: Xcode_11.2.0_beta_2_stackoverflow.app

cd /applications
ls

Sau đó, tôi tìm thấy tên Xcode của mình, sau đó thay thế bằng

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

Nó làm việc cho tôi.


0

Không ai ở trên làm việc cho tôi. Ban đầu tôi đã cài đặt Công cụ dòng lệnh riêng biệt và sau đó là tất cả Xcode. Điều làm việc cho tôi là gỡ cài đặt Công cụ dòng lệnh như hiển thị ở đây . Sau đó, khi cố gắng chạyxcode-select lại, tôi được yêu cầu cài đặt lại chúng.

* Nhân tiện, lý do tại sao tôi tìm thấy luồng này là vì tôi đã cài đặt một số thư viện (đặc biệt gcc) với macports, có lẽ là sử dụng Công cụ dòng lệnh cũ, và sau đó tôi đã cài đặt Xcode đầy đủ giữa chừng để phát triển. Vì vậy, đối với trường hợp của tôi, tôi đã phải cài đặt lại macportssau khi gỡ bỏ Công cụ dòng lệnh độc lập, cài đặt lại chúng, cài đặt lại gccvà sau đó quá trình biên dịch của tôi hoạt động.


0

Chỉ có hai bước cần thiết và XCode.app đầy đủ hoàn toàn không bắt buộc:

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

Lúc này, hộp thoại "Cài đặt Softwre" bật lên:

nhập mô tả hình ảnh ở đây

Đó là nó!


0

Cài đặt lại mã đơn giản

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.