2013-10-28 73 views
15

我星期五升級到xcode 5命令行工具。有些東西不能正常工作,我想回到最後的4.x版本ox xcode。我如何卸載xcode 5命令行工具?我在發行說明中沒有看到任何內容。如何卸載xcode 5命令行工具?

+1

我最終恢復了時間機器備份。我的機器(RVM,xcode CLI,捆綁器)上的所有東西都變得不可思議了,恢復之後,一切都變得更好了。我一定很糟糕。如果將來出現,我仍然想知道這個問題的答案。 – WattsInABox

+0

對不起,但我不明白你想要什麼。你想卸載Xcode 5並安裝以前的版本嗎?還是隻想卸載命令行工具,讓Xcode 5保留舊版本的命令行工具? – veducm

+0

http://stackoverflow.com/questions/14756026/how-to-downgrade-xcode-to-previous-version –

回答

8

根據您是否在Mavericks中運行Xcode 5,您需要執行兩項不同的操作來卸載命令行工具。

  • 小牛Xcode includes its own copy of the Command line tools(即它們捆綁爲Xcode.app的一部分)。因此,卸載Xcode(檢查下面的說明)也會刪除命令行工具。

  • 對於運行Xcode的5或以上版本(4.x版的Xcode)較舊的Mac OSX版本,你可以找到以前SO answers解釋如何卸載Xcode的命令行工具。您可以使用此script(閱讀更多關於它在this post):

    # remove_CLI_tools.sh 
    # written by cocoanetics:http://www.cocoanetics.com/2012/07/you-dont-need-the-xcode-command-line-tools/ 
    # modified by yoneken 
    
    #!/bin/sh 
    
    RECEIPT_FILE1=/var/db/receipts/com.apple.pkg.DevSDK.bom 
    RECEIPT_PLIST1=/var/db/receipts/com.apple.pkg.DevSDK.plist 
    RECEIPT_FILE2=/var/db/receipts/com.apple.pkg.clang.bom 
    RECEIPT_PLIST2=/var/db/receipts/com.apple.pkg.clang.plist 
    RECEIPT_FILE3=/var/db/receipts/com.apple.pkg.llvm-gcc4.2.bom 
    RECEIPT_PLIST3=/var/db/receipts/com.apple.pkg.llvm-gcc4.2.plist 
    RECEIPT_FILE4=/var/db/receipts/com.apple.pkg.DeveloperToolsCLI.bom 
    RECEIPT_PLIST4=/var/db/receipts/com.apple.pkg.DeveloperToolsCLI.plist 
    
    if [ ! -f "$RECEIPT_FILE4" ] 
    then 
        echo "Command Line Tools not installed." 
        exit 1 
    fi 
    
    echo "Command Line Tools installed, removing ..." 
    
    # Need to be at root 
    cd/
    
    # Remove files and dirs mentioned in the "Bill of Materials" (BOM) 
    lsbom -fls $RECEIPT_FILE1 $RECEIPT_FILE2 $RECEIPT_FILE3 $RECEIPT_FILE4 | sudo xargs -I{} rm -r "{}" 
    
    # remove the receipt 
    sudo rm $RECEIPT_FILE1 $RECEIPT_FILE2 $RECEIPT_FILE3 $RECEIPT_FILE4 
    
    # remove the plist 
    sudo rm $RECEIPT_PLIST1 $RECEIPT_PLIST2 $RECEIPT_PLIST3 $RECEIPT_PLIST4 
    
    echo "Done! Please restart XCode to have Command Line Tools appear as uninstalled." 
    

您可以來看,這種容易打開一個終端窗口並運行此命令(它會下載腳本並自動執行) :

curl "https://gist.github.com/yoneken/3284561/raw/db665bb64f93e38ce138b5ca620b9edd18dc31e4/remove_CLI_tools.sh" | sh 

如果一切正常,您可以打開Xcode,看到命令行工具顯示爲要安裝。

然後,根據你想要什麼,你可以降級的Xcode低版本並重新安裝命令行工具該版本,例如。

要降級的Xcode,如this SO answer解釋說:

  1. 卸載Xcode中5:去/Applications並刪除Xcode的應用程序。
  2. 重新啓動Mac。
  3. 然後您可以從here下載所需的Xcode版本並從頭開始安裝。
+0

感謝您的答覆,但該腳本不適用於XCode 5,據我瞭解。它是用於4.3 CLI – WattsInABox

+1

經過一些更多的研究後,我發現** Xcode 5.0.x和Mavericks **,Apple已經回到**將Xcode命令行工具捆綁到Xcode.app **(+ info :http://derflounder.wordpress.com/2013/11/15/xcode-command-line-tools-included-with-xcode-5-0-x-on-mavericks/)。因此,除非手動安裝了命令行工具,否則卸載該應用程序應該刪除命令行工具。 – veducm

+0

@WattsInABox我最後的研究對你有幫助嗎?我想驗證您的具體情況的答案是否正確。 – veducm

7

我試圖卸載命令行工具v6時偶然發現了這一點。

我已經安裝了完整的Xcode 6,但將Xcode移動到垃圾箱不是卸載/刪除CLT。例如,我仍然有/usr/bin/clang。解決的辦法是使用.bom內容(類似@ veducm的答案)手動刪除CLT:

cd/
lsbom -fls /var/db/receipts/com.apple.pkg.CLTools_Executables.bom | sudo xargs -I{} rm -rf "{}" 
lsbom -fls /var/db/receipts/com.apple.pkg.DevSDK_OSX109.bom | sudo xargs -I{} rm -rf "{}" 
sudo rm /var/db/receipts/com.apple.pkg.{CLTools_Executables,DevSDK_OSX109}.{bom,plist} 

替換DevSDK_OSX109你所擁有的版本。您可能有多個,在這種情況下,將相同的命令應用於所有人(例如,我同時安裝了DevSDK_OSX109DevSDK_OSX1010,因爲我已經爲小牛隊和優勝美地安裝了CLT)。

注意:這將刪除.bom中列出的文件。如果您不確定,您可以通過僅執行lsbom -fls /var/db/receipts/com.apple.pkg.CLTools_Executables.bom等查看它們的內容。注意2:由於lsbom報告的路徑是相對的,因此您需要cd /。您也可以通過簡單地執行rm -rf /Library/Developer/CommandLineTools來刪除CLT。

2

rm命令刪除(刪除)文件或目錄。

從以下命令

sudo rm -rf /Library/Developer/CommandLineTools 

從終端

刪除CLT。