Xcode Command Line Tools
# Xcode Command Lines Tool
提示
本指南适用于 MacOS Monterey 12
、macOS Big Sur 11
、macOS Catalina
、macOS Mojave 10.14.x
、10.13 High Sierra
、10.12 Sierra
、OS X 10.11 El Capitan
、OS X 10.10 Yosemite
、Mac OS X 10.9
和更新版本.
运行先前版本的 Mac OS X 的 Mac 用户可以继续通过 Apple Developer 网站 (opens new window) 提供的软件包安装程序直接安装命令行工具和 gcc(没有 Xcode)。
# 📖. 前言
使用 macOS 时,Apple 自家的 XCode Command Line Tools 基本上很难绕开。比如你想用 Homebrew 安装点什么东西,它都会依赖 XCode CLT。比较不幸地是,如果你更新了 macOS,那你就得重新安装 XCode。如果你重新安装 XCode,那么匹配版本的 CLT 也得重新安装。
命令行工具包为 Mac 终端用户提供了许多常用工具、实用程序和编译器,包括 make、GCC、clang、perl、svn、git、size、strip、strings、libtool、cpp、what 和许多其他有用的命令通常在默认的 linux 安装中找到。 我们已经为感兴趣的人提供了通过下面的命令行工具包可用的 新二进制文件的完整列表,或者您可以在安装软件包后自己查看,我们将在此处进行介绍。
# 一. 在 Mac OS X 中安装命令行工具
# 1. 安装命令
xcode-select --install
# 2. 确认安装
会出现一个软件更新弹出窗口,询问:“xcode-select 命令需要请求开发者工具,您要现在安装这些工具吗?” 选择通过单击 “安装” 来确认这一点,然后再要求时同意服务条款(请随时通读它们)
# 3. 等待安装
等待命令行工具包下载完成,大约 130MB 并且安装速度相当快,具体取决于您的连接速度。
安装程序完成后会自行消失,然后您可以通过尝试使用刚刚安装的命令之一来确认一切正常。例如 gcc、git、svn、rebase、make、id、otool、nm 等等想要从下面的列表中。假设安装没有中断,该命令将按预期执行。这也意味着您可以直接从源代码编译和安装东西,而无需使用包管理器。享受您的新 unix 命令行工具包!
# 二. 使用命令行工具安装的内容和位置
对于那些有兴趣了解他们的 Mac 上安装的内容及其去向的详细信息的人,整个命令行工具包包被放置在以下目录中:
/Library/Developer/CommandLineTools/
如果您愿意,您可以浏览该目录,或者您可以只了解它,以防您以后想要修改或调整任何包。
请注意,目录是 Mac OS 的根 /Library
,而不是 用户 ~/Library
目录。
如果您想查看可用的 61 个新命令,它们都在 /Library/Developer/CommandLineTools/usr/bin/
中
# 三. 问题
# 1. 对“当前不可用”错误进行故障排除
收到一条错误消息,显示“无法安装该软件,因为它当前无法从软件更新服务器获得”?好吧,您很幸运,因为该错误消息可能表明您已经在 Mac 上安装了 Xcode。
从 Mac OS X 10.9 开始,如果 Xcode 已经安装在 Mac OS X 中,那么命令行工具也会被安装(您可以通过尝试从终端运行 gcc 或 make 来检查这一点)。因此,本教程的目标用户是不想安装更广泛的 Xcode 开发包,而是只安装命令行实用程序的用户。是的,这意味着您可以卸载整个 Xcode 应用程序并仅在需要时安装命令行工具,因为对于许多用户和系统管理员来说,这是他们开始安装 Xcode 的唯一原因。
# 2. 对git仍是老版本解决
安装完成后,执行 git --version
,如果你发现依旧是老版本,可以使用下面的方式解决。
安装包安装的 Git 以及 Homebrew 安装的 Git,最终都会把执行路径放到 /usr/local/bin
下面,xcode 安装的 git 会放在 /usr/bin
下面,而且如果你查看一下 PATH
echo $PATH
会发现,/usr/bin
是处在 /usr/local/bin
前面的,所以就导致了旧版本依旧覆盖了新版本。知道了原因之后,解决方式就很简单了,我们只需要把 /usr/local/bin
放到前面即可。有两种方式:
- 第一种:
编辑 /etc/paths
(需要管理员权限),调整 /usr/local/bin
在最前面
- 第二种:
编辑 ~/.bashrc
或者 ~/.bash_profile
PATH=/usr/local/bin:$PATH
export PATH
2
然后执行 source ~/.bashrc
或者 source ~/.bash_profile
使改变生效。
此时再次执行 git --version
应该就会看到新版本了。
# 🌟. 新二进制文件的完整列表
ar
as
asa
bison
BuildStrings
c++
c89
c99
cc
clang
clang++
cmpdylib
codesign_allocate
CpMac
cpp
ctags
ctf_insert
DeRez
dsymutil
dwarfdump
dyldinfo
flex
flex++
g++
gatherheaderdoc
gcc
gcov
GetFileInfo
git
git-cvsserver
git-receive-pack
git-shell
git-upload-archive
git-upload-pack
gm4
gnumake
gperf
hdxml2manxml
headerdoc2html
indent
install_name_tool
ld
lex
libtool
lipo
lldb
lorder
m4
make
MergePef
mig
mkdep
MvMac
nasm
ndisasm
nm
nmedit
otool
pagestuff
projectInfo
ranlib
rebase
redo_prebinding
ResMerger
resolveLinks
Rez
RezDet
RezWack
rpcgen
segedit
SetFile
size
SplitForks
strings
strip
svn
svnadmin
svndumpfilter
svnlook
svnrdump
svnserve
svnsync
svnversion
unifdef
unifdefall
UnRezWack
unwinddump
what
xml2man
yacc
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90