कमांड लाइन के माध्यम से Xcode इंस्टॉल करना


27

मैं एक लिनक्स उपयोगकर्ता हूं और इससे पहले कभी भी OSX का उपयोग नहीं किया था। किसी ने मुझसे OSX "लायन" सर्वर पर कुछ सॉफ़्टवेयर स्थापित करने में मदद के लिए कहा। मैंने उनसे कहा कि पर्याप्त होगा, यह मानते हुए मुझे एक SSH शेल देने के लिए कहा। हालांकि चीजें मेरे विचार से अधिक मुश्किल हैं।

मैं होमब्रे को स्थापित करना चाहता था, लेकिन यह स्थापित नहीं हुआ क्योंकि सिस्टम पर कोई सीसी नहीं था। कुछ Google के बाद, मुझे लगता है कि मुझे Xcode स्थापित करने की आवश्यकता है। मैंने अभी Apple डेवलपर साइट से xcode 4.5 डाउनलोड किया, और इसे सिस्टम पर माउंट किया। इसमें Xcode.appसामान का एक गुच्छा के साथ एक dir होता है । मैं यहां से कैसे जाऊं?

क्या मैं मशीन में भौतिक पहुँच के बिना Xcode स्थापित कर सकता हूँ? मैं वास्तव में चाहता हूँ कि इस बिंदु पर होमब्रेव चल रहा हो।

जवाबों:


25

आप केवल स्टैंडअलोन डेवलपर कमांड लाइन टूल (जिसमें gccअन्य मानक डेवलपर टूलचैन आइटम शामिल हैं) स्थापित करने से बेहतर हो सकते हैं । आप इसे ऐप्पल के डेवलपर डाउनलोड (जिसे एक मुफ्त डेवलपर खाते की आवश्यकता है) से प्राप्त कर सकते हैं । दुर्भाग्य से इसका कोई सीधा लिंक नहीं है, लेकिन बस कमांड लाइन टूल की खोज करें और आपको यह पता चलेगा (ध्यान दें कि लायन और माउंटेन लायन के लिए अलग-अलग डाउनलोड हैं)।

डाउनलोड एक DMG है। माउंट कि, और आप एक मिल जाएगा .mpkgफ़ाइल, आप कर सकते हैं जो कमांड लाइन के माध्यम से स्थापित : sudo installer -pkg "Command Line Tools.mpkg" -target /


नंगे पैकेज को ध्यान में रखते हुए +1। टर्मिनल से इंस्टॉल करने के लिए +3 - मैं अपना जवाब थोड़ा नीचे संपादित करूंगा क्योंकि Xcode पहले ही डाउनलोड हो चुका है, उपकरण Xcode.app/Contents/Developer में हैं और आसानी से चलने के लिए सुविधाजनक पथ पर कॉपी किए जा सकते हैं।
bmike

हाँ, मुझे यकीन है कि कैसे / अगर Xcode पैकेज में शामिल टूल स्टैंडअलोन डाउनलोड से अलग हैं। संभवतः कुछ अलग है कि Xcode में डाउनलोड टूल विकल्प भी है। किसी भी घटना में, यदि आप स्क्रैच से शुरू कर रहे हैं और केवल कमांड लाइन से "क्लीन" इंस्टॉल करना चाहते हैं, तो यह संभवतः जाने का रास्ता है।
डकैत

2
मेरा मानना ​​है कि पिछली बार जब मैंने जाँच की थी, तो Xcode टूल में अतिरिक्त हेडर और चीजें हैं जो GUI बिल्डिंग की सेवा के लिए हैं और कमांड लाइन टूल्स को थोड़ा नीचे छीन लिया गया है / अलग-अलग झंडे के साथ अलग से बनाया गया है जब संकलित किया जाता है, लेकिन आम तौर पर प्रमुख Xcode के समान संस्करण भी होता है। विज्ञप्ति। व्यवहार में, मैंने कभी नहीं देखा है कि मतभेदों को अकेले मामले पर ध्यान दें। AFAIK, Xcode आपके द्वारा बताए गए पैकेज को नीचे खींचता है और इसे स्थापित करता है ताकि आपके पास टूलसेट का xcrun संस्करण और टूलसेट का / usr / बिन संस्करण दोनों हो।
bmike

ये काम किया। मैंने सिर्फ काढ़ा लगाया। आपके पोस्ट में एक टाइपो है, इसे sudo installerइसके बजाय पढ़ना चाहिए sudo install
जेरोन

@ जोरेन के लिए धन्यवाद, निश्चित। यकीन नहीं होता कि मैं कैसे चूक गया।
डकैत

10

मुझे हाल ही में SSH के ऊपर माउंटेन लॉयन पर Xcode कमांड लाइन टूल्स स्थापित करने थे। यहाँ है कि मैं यह कैसे किया।

  1. यदि आपके पास एक मुफ्त Apple डेवलपर खाता नहीं है, तो एक के लिए पंजीकरण करें

  2. लॉग इन करने के लिए https://developer.apple.com/downloads

  3. OSX के अपने संस्करण के लिए "Xcode के लिए कमांड लाइन टूल" डाउनलोड करें

    मेरे लिए, वह "कमांड लाइन टूल्स (ओएस एक्स माउंटेन लायन) एक्सकोड के लिए - अप्रैल 2014" था

  4. अपने दूरस्थ पर dmg फ़ाइल की प्रतिलिपि बनाएँ

    निम्न आदेश में, मैं अपने स्थानीय कंप्यूटर से फ़ाइल को सुरक्षित रूप से नामित रिमोट में कॉपी करने के लिए scp का उपयोग कर रहा हूंremote

    $ scp ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg remote:Downloads/
  5. अपने रिमोट के लिए ssh

    $ ssh remote
  6. दूरस्थ पर dmg फ़ाइल माउंट करें

    यहां, मैं छवि को माउंट करने के लिए हड्युटिल का उपयोग कर रहा हूं

    $ hdiutil attach ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg
  7. dmg में निहित पैकेज स्थापित करें

    यहां, इंस्टॉलर को चलाया जाना चाहिए sudoक्योंकि इस पैकेज को रूट फाइल सिस्टम पर स्थापित करने की आवश्यकता है

    $ cd /Volumes/Command\ Line\ Tools\ \(Mountain\ Lion\)
    $ sudo installer -pkg Command\ Line\ Tools\ \(Mountain\ Lion\).mpkg -target /
  8. डीएमजी फ़ाइल को अनमाउंट करें

    $ hdiutil detach /Volumes/Command\ Line\ Tools\ \(Mountain\ Lion\)
  9. रिमोट से dmg फ़ाइल हटाएं ; ऐच्छिक

    मुझे कोई उद्देश्य नहीं दिखता कि आप इसे इधर-उधर रख सकें, लेकिन आप चाहें तो ऐसा कर सकते हैं।

    $ rm ~/Downloads/command_line_tools_for_osx_mountain_lion_april_2014.dmg

adcdownload.apple.com/Developer_Tools/Xcode_8.3/Xcode_8.3.xip अब एक .dmg नहीं है। stackoverflow.com/a/39489446/18096 बताता है कि उस अखरोट को कैसे कूटना है।
मार्टिन डोरी

4

यह बहुत पुराना है, लेकिन इसके द्वारा आने वाले किसी भी व्यक्ति के लिए कमांड लाइन टूल्स स्थापित करने के लिए एक सरल, बिल्ट-इन-वन-लाइनर है, जो किसी भी .dmgया .pkgएस को डाउनलोड करने की आवश्यकता के बिना । यह भी macOS की एक ताजा स्थापना पर उपलब्ध है।

आदेश है:

xcode-select --install

manपृष्ठ के अनुसार :

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

ऐसा लगता है कि Xcode 3.0 के आसपास (OS X 10.5) होने के बाद से यह उपलब्ध है।


1
मैं xcode-select संस्करण 2311 में no -install स्विच देखता हूं, 16 नवंबर 2011 से मैन पेज, मैक ओएस एक्स 10.8.5।
मार्टिन डोरी

न तो मैं xcode-select संस्करण 2349 में, 08 मार्च 2016 से मैन पेज।
user44400

1

आपके लिए आवश्यक उपकरण सभी Xcode.app/Contents/Developer में हैं और यदि आपके पास वह फ़ोल्डर है, तो आप स्थापित कर रहे हैं क्योंकि OS X अनुप्रयोग कहीं से भी चल सकता है।

यदि आप Xcode का उपयोग करना चाहते हैं, तो बस open -aXcode.app के आइकन या पथ पर क्लिक करें और आप ऐप लॉन्च कर देंगे। अधिकांश लोग Xcode.app फ़ोल्डर को "इंस्टॉल करने" के लिए / एप्लिकेशन (या ~ / एप्लिकेशन) में ले जाते हैं

ओह - जब आप एक्सकोड को आग लगाते हैं तो आप वरीयताओं को खोलना चाहेंगे, डाउनलोड पैन पर जाएं और स्टैंड अलोन कमांड लाइन टूल स्थापित करें। यह स्थानों संकलन toolchain में / usr / bin ताकि आप उपयोग करने के लिए नहीं है xcrun --find gccऔर xcrun --find makeउपकरणों के लिए भी आप Xcode.app फ़ोल्डर गिरा रिश्तेदार के लिए पथ का पता लगाने की।


फिर भी कमांड लाइन यूटिलिटीज को काम करने के लिए होमब्रे करने की आवश्यकता होती है। यह शायद आप के लिए सामान स्थापित करने के लिए (या VNC के माध्यम से कनेक्ट और यह अपने आप करते हैं) ओएस एक्स प्रणाली के मालिक पूछने के लिए सबसे आसान है
nohillside

1

मुझे पता चला कि होमब्रे ने Xcode कमांड लाइन टूल्स को भी स्थापित किया है ।

मेरे लिए बड़ा लाभ यह है कि मैं इसे टर्मिनल (यहां तक ​​कि ssh) से कर सकता हूं और इंस्टॉलर यूआई-पॉप-विंडो नहीं दिखाता है , जो मुझे रिमोट टर्मिनल के उपयोग से रोकता है।

Homebrew संस्करण 2.1.10 (git revision b7d38f; अंतिम वचन 2019-08-12) के साथ परीक्षण किया गया ।

मेरे लिए यह कदम बहुत आसान था, फिर ऐप्पल से डीजीएम पैकेज डाउनलोड करना और इसे ssh द्वारा लक्ष्य मशीन में कॉपी करना।

इंस्टॉलर कमांड उत्पन्न होगा (वेबसाइट से कॉपी किया गया)

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

निम्नलिखित उत्पादन:

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

आपके द्वारा डाउनलोड किए गए संस्करण / फ़ाइल नाम के साथ Xcode "{{osx_xcode_file}}" को बदलें।

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

वैकल्पिक रूप से पिछले XCODE को हटाएं

rm /Applications/Xcode.app समस्या का कारण बनता है

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

प्रत्येक फ़ाइल को scriptname.scpt के रूप में सहेजें

रन: / usr / bin / osascript scriptname.scpt कंसोल उपयोगकर्ता के रूप में चलाएं (रूट नहीं)


आप इसे ssh के माध्यम से कैसे चला सकते हैं? इसके अलावा यह कमांड लाइन केवल डेवलपर टूल से बेहतर कैसे है?
user151019

हाय मार्क, हम जगह में पूर्ण xcode स्थापित करने के लिए एक विशिष्ट आवश्यकता है। ssh user @ hostname "onascript <path / to / file> /myscript.scpt
casibbald
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.