Cài đặt Xcode qua dòng lệnh


27

Tôi là người dùng Linux và chưa bao giờ sử dụng OSX. Có người nhờ tôi giúp đỡ cài đặt một số phần mềm trên máy chủ OSX "Lion". Tôi yêu cầu anh ta đưa cho tôi một vỏ SSH, cho rằng điều đó là đủ. Tuy nhiên mọi thứ khó khăn hơn tôi nghĩ.

Tôi muốn cài đặt homebrew, nhưng nó không cài đặt vì không có cc trên hệ thống. Sau một số google, tôi cho rằng tôi cần cài đặt Xcode. Tôi vừa tải xuống xcode 4.5 từ trang web của nhà phát triển apple và gắn nó trên hệ thống. Nó chứa một thư mục Xcode.appvới một loạt các công cụ trong đó. Làm thế nào để tôi đi từ đây?

Tôi có thể cài đặt Xcode mà không cần truy cập vật lý vào máy không? Tất cả những gì tôi thực sự muốn là có được homebrew chạy vào thời điểm này.

Câu trả lời:


25

Bạn có thể tốt hơn nếu chỉ cài đặt Công cụ dòng lệnh dành cho nhà phát triển độc lập (bao gồm gccvà các mục công cụ dành cho nhà phát triển tiêu chuẩn khác). Bạn có thể lấy nó từ Tải xuống dành cho nhà phát triển của Apple (yêu cầu tài khoản nhà phát triển miễn phí). Thật không may, không có liên kết trực tiếp, nhưng chỉ tìm kiếm các công cụ dòng lệnh và bạn sẽ tìm thấy nó (lưu ý rằng có các bản tải xuống khác nhau cho Lion và Mountain Lion).

Tải về là một DMG. Gắn kết đó và bạn sẽ tìm thấy một .mpkgtệp mà bạn có thể cài đặt thông qua dòng lệnh : sudo installer -pkg "Command Line Tools.mpkg" -target /.


+1 để giữ gói trần trong tâm trí. +3 để cài đặt từ thiết bị đầu cuối - Tôi sẽ chỉnh sửa câu trả lời của mình một chút vì Xcode đã được tải xuống, các công cụ có trong Xcode.app/Contents/Developer và có thể dễ dàng được sao chép sang đường dẫn thuận tiện để chạy.
bmike

Vâng, tôi chắc chắn làm thế nào / nếu các công cụ có trong gói Xcode khác với tải xuống độc lập. Có lẽ hơi khác khi cho rằng Xcode cũng có tùy chọn công cụ tải xuống. Trong mọi trường hợp, nếu bạn bắt đầu từ đầu và muốn cài đặt "sạch" chỉ thực hiện mọi thứ từ dòng lệnh, thì đây có lẽ là cách tốt nhất.
kẻ cướp

2
Tôi tin rằng lần cuối cùng tôi kiểm tra, các công cụ Xcode có thêm tiêu đề và những thứ phục vụ cho việc xây dựng GUI và các công cụ Dòng lệnh được gỡ xuống một chút / được xây dựng riêng với các cờ hơi khác nhau khi được biên dịch, nhưng nói chung cũng là phiên bản tương tự như Xcode chính phát hành. Trong thực tế, tôi chưa bao giờ thấy sự khác biệt được chú ý chứ đừng nói đến vấn đề. AFAIK, Xcode kéo xuống gói bạn đã đề cập và cài đặt nó để bạn có cả hai - phiên bản xcrun của bộ công cụ và phiên bản / usr / bin của bộ công cụ.
bmike

Yay nó đã làm việc. Tôi vừa cài đặt brew. Có một lỗi đánh máy trong bài viết của bạn, nó nên đọc sudo installerthay vì sudo install.
Jeroen

@Jeroen cảm ơn vì điều đó, đã sửa. Không chắc chắn làm thế nào tôi bỏ lỡ nó.
kẻ cướp

10

Gần đây tôi đã phải cài đặt các công cụ dòng lệnh Xcode trên Mountain Lion qua SSH. Đây là cách tôi đã làm nó.

  1. Nếu bạn không có tài khoản nhà phát triển Apple miễn phí, hãy đăng ký một tài khoản

  2. Đăng nhập vào https://developer.apple.com/doads

  3. Tải xuống "Công cụ dòng lệnh cho Xcode" phù hợp với phiên bản OSX của bạn

    Đối với tôi, đó là "Công cụ dòng lệnh (OS X Mountain Lion) cho Xcode - Tháng 4 năm 2014"

  4. Sao chép tập tin dmg vào điều khiển từ xa của bạn

    Trong lệnh sau, tôi đang sử dụng scp để sao chép an toàn tệp từ máy tính cục bộ của mình vào điều khiển từ xa có tênremote

    $ scp ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg remote:Downloads/
  5. ssh đến điều khiển từ xa của bạn

    $ ssh remote
  6. gắn tập tin dmg trên remote

    Ở đây, tôi đang sử dụng hdiutil để gắn hình ảnh

    $ hdiutil attach ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg
  7. cài đặt gói chứa trong dmg

    Ở đây, trình cài đặt phải được chạy với sudovì gói này cần được cài đặt trên hệ thống tệp gốc

    $ cd /Volumes/Command\ Line\ Tools\ \(Mountain\ Lion\)
    $ sudo installer -pkg Command\ Line\ Tools\ \(Mountain\ Lion\).mpkg -target /
    
  8. ngắt kết nối tập tin dmg

    $ hdiutil detach /Volumes/Command\ Line\ Tools\ \(Mountain\ Lion\)
  9. xóa tập tin dmg từ xa; không bắt buộc

    Tôi thấy không có mục đích giữ nó xung quanh, nhưng bạn có thể nếu bạn muốn.

    $ rm ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg

adcdoad.apple.com/Developer_Tools/Xcode_8.3/Xcode_8.3.xip không còn là .dmg. stackoverflow.com/a/39489446/18096 giải thích cách bẻ khóa đai ốc đó.
Martin Dorey

4

Điều này khá cũ, nhưng đối với bất kỳ ai đến đây, có một công cụ đơn giản, tích hợp sẵn để cài đặt Công cụ dòng lệnh mà không cần phải tải xuống bất kỳ .dmghoặc .pkgs. Điều này có sẵn ngay cả trên một bản cài đặt macOS mới.

Lệnh là:

xcode-select --install

Theo mantrang:

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

Nó dường như đã có sẵn kể từ khi Xcode 3.0 xuất hiện (OS X 10.5).


1
Tôi thấy không có - cài đặt chuyển đổi trong xcode-select phiên bản 2311, trang man từ ngày 16 tháng 11 năm 2011, Mac OS X 10.8.5.
Martin Dorey

Tôi cũng không chọn phiên bản xcode 2349, trang man từ ngày 08 tháng 3 năm 2016.
user44400

1

Các công cụ bạn cần đều có trong Xcode.app/Contents/Developer và nếu bạn có thư mục đó, bạn đã hoàn tất cài đặt vì các ứng dụng OS X có thể chạy từ bất cứ đâu.

Nếu bạn muốn sử dụng Xcode, chỉ cần nhấp vào biểu tượng hoặc open -ađường dẫn đến thư mục Xcode.app và bạn sẽ khởi chạy ứng dụng. Hầu hết mọi người di chuyển thư mục Xcode.app vào / Ứng dụng (hoặc ~ / Ứng dụng) để "cài đặt"

Ồ - khi bạn kích hoạt Xcode, bạn sẽ muốn mở các tùy chọn, đi đến ngăn Tải xuống và cài đặt các công cụ dòng lệnh độc lập. Điều này đặt chuỗi công cụ biên dịch vào / usr / bin để bạn không phải sử dụng xcrun --find gccxcrun --find makeđịnh vị đường dẫn đến các công cụ liên quan đến bất cứ nơi nào bạn bỏ thư mục Xcode.app.


Tuy nhiên, tiện ích dòng lệnh cũng cần thiết để homebrew hoạt động. Có lẽ đơn giản nhất để yêu cầu chủ sở hữu của hệ thống OS X để cài đặt các công cụ cho bạn (hoặc kết nối thông qua VNC và tự mình làm)
nohillside

1

Tôi phát hiện ra rằng Homebrew cũng cài đặt Công cụ dòng lệnh Xcode .

Lợi ích lớn cho tôi là tôi có thể làm điều đó từ một thiết bị đầu cuối (thậm chí ssh) và trình cài đặt không hiển thị UI-Pop-Window , điều này ngăn tôi sử dụng với thiết bị đầu cuối từ xa.

Đã thử nghiệm với phiên bản Homebrew 2.1.10 (bản sửa đổi git b7d38f; lần xác nhận cuối cùng 2019-08-12).

Đối với tôi, các bước dễ dàng hơn nhiều, sau đó tải gói dmg từ apple và sao chép nó bằng ssh vào máy đích.

Lệnh cài đặt sẽ tạo (sao chép từ trang web)

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

đầu ra sau đây:

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

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

Thay thế Xcode "{{osx_xcode_file}}" bằng phiên bản / tên tệp bạn đã tải xuống.

Cài đặt 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

Tùy chọn xóa XCODE trước đó

rm /Appluggest/Xcode.app gây ra sự cố không mong muốn

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

Lưu mỗi tệp dưới dạng scriptname.scpt

run: / usr / bin / osascript scriptname.scpt Chạy với tư cách người dùng bảng điều khiển (KHÔNG ROOT)


Làm thế nào bạn có thể chạy này thông qua ssh? Ngoài ra làm thế nào là điều này tốt hơn so với các công cụ phát triển chỉ dòng lệnh?
dùng151019

Xin chào Mark, chúng tôi có một yêu cầu cụ thể để cài đặt xcode đầy đủ. ssh user @ hostname "onascript <path / to / file> /myscript.scpt
casibbald 15/2/2016
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.