我有一个OS X 10.8.2的Macbook Pro。XCode已安装。我知道这出现在“应用程序”目录中。我需要知道是否已安装命令行工具,/ usr / bin中也有xcodebuild和xcode-select文件。有命令吗?我该怎么办才能查看是否已安装XCode CLT,如果可以,则可以找到已安装的版本?
我有一个OS X 10.8.2的Macbook Pro。XCode已安装。我知道这出现在“应用程序”目录中。我需要知道是否已安装命令行工具,/ usr / bin中也有xcodebuild和xcode-select文件。有命令吗?我该怎么办才能查看是否已安装XCode CLT,如果可以,则可以找到已安装的版本?
Answers:
请参阅优胜美地更新。
请参阅优胜美地更新。
请参阅优胜美地更新。
请参阅优胜美地更新。
只需在命令行中输入gcc
或输入make
!OSX将知道您没有命令行工具,并提示您安装它们!
要检查它们是否存在,xcode-select -p
将打印目录。或者,2
如果它们不存在,则返回值将是0
。只打印返回值(感谢@Andy):
xcode-select -p 1>/dev/null;echo $?
用 pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
选项1: Rob Napier建议使用pkgutil --pkg-info=com.apple.pkg.DeveloperToolsCLI
,它可能更干净。
选项2:检查内部/var/db/receipts/com.apple.pkg.DeveloperToolsCLI.plist
是否有引用com.apple.pkg.DeveloperToolsCLI
,它将列出版本4.5.0
。
[Mar 12 17:04] [jnovack@yourmom ~]$ defaults read /var/db/receipts/com.apple.pkg.DeveloperToolsCLI.plist
{
InstallDate = "2012-12-26 22:45:54 +0000";
InstallPrefixPath = "/";
InstallProcessName = Xcode;
PackageFileName = "DeveloperToolsCLI.pkg";
PackageGroups = (
"com.apple.FindSystemFiles.pkg-group",
"com.apple.DevToolsBoth.pkg-group",
"com.apple.DevToolsNonRelocatableShared.pkg-group"
);
PackageIdentifier = "com.apple.pkg.DeveloperToolsCLI";
PackageVersion = "4.5.0.0.1.1249367152";
PathACLs = {
Library = "!#acl 1\\ngroup:ABCDEFAB-CDEF-ABCD-EFAB-CDEF0000000C:everyone:12:deny:delete\\n";
System = "!#acl 1\\ngroup:ABCDEFAB-CDEF-ABCD-EFAB-CDEF0000000C:everyone:12:deny:delete\\n";
};
}
/var/db/receipts
您可以使用API来访问目录,而无需进入目录:pkgutil --pkg-info=com.apple.pkg.DeveloperToolsCLI
CLTools_Executables
至少是我在OS Mavericks下找到的所有内容。该命令将是:pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
以下是一些人可能需要的新Mac上的一些额外步骤。这为@jnovack的出色答案增加了一点。
更新:进行此设置时的其他一些注意事项:
确保您的管理员用户具有密码。尝试启用root用户时,空白密码将不起作用。
System Preferences > Users and Groups > (select user) > Change password
然后启用root,dsenableroot
在终端中运行:
$ dsenableroot
username = mac_admin_user
user password:
root password:
verify root password:
dsenableroot:: ***Successfully enabled root user.
输入admin用户的密码,然后输入两次启用的新root密码。
下一个类型:
sudo gcc
要么
sudo make
它将响应如下内容:
WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.
To proceed, enter your password, or type Ctrl-C to abort.
Password:
You have not agreed to the Xcode license agreements. You must agree to
both license agreements below in order to use Xcode.
提示您显示许可协议时,请按Enter。
Hit the Enter key to view the license agreements at
'/Applications/Xcode.app/Contents/Resources/English.lproj/License.rtf'
IMPORTANT: BY USING THIS SOFTWARE, YOU ARE AGREEING TO BE BOUND BY THE
FOLLOWING APPLE TERMS:
//...
按q
退出许可协议视图。
By typing 'agree' you are agreeing to the terms of the software license
agreements. Type 'print' to print them or anything else to cancel,
[agree, print, cancel]
输入agree
。然后以:
clang: error: no input files
这基本上意味着你没有给make
或gcc
任何输入文件。
这是支票的样子:
$ xcode-select -p
/Applications/Xcode.app/Contents/Developer
对于小牛来说,现在有点不同了。
当找不到工具时,这是命令pkgutil
命令返回的内容:
$ pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
No receipt for 'com.apple.pkg.CLTools_Executables' found at '/'.
要安装命令行工具,它可以在终端上很好地工作,并带有良好的gui和所有内容。
$ xcode-select --install
http://macops.ca/installing-command-line-tools-automatically-on-mavericks/
找到它们后,pkgutil
命令将返回以下内容:
$ pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
package-id: com.apple.pkg.CLTools_Executables
version: 5.0.1.0.1.1382131676
volume: /
location: /
install-time: 1384149984
groups: com.apple.FindSystemFiles.pkg-group com.apple.DevToolsBoth.pkg-group com.apple.DevToolsNonRelocatableShared.pkg-group
此命令在安装前后返回相同的结果。
$ pkgutil --pkg-info=com.apple.pkg.DeveloperToolsCLI
No receipt for 'com.apple.pkg.DeveloperToolsCLI' found at '/'.
另外我之前在xcode的downloads部分中选择并安装了CLT的组件,但似乎并没有将它安装到终端...
希望能有所帮助。
在macOS Sierra(10.12)上:
运行以下命令以查看是否安装了CLT:
xcode-select -p
如果已经安装了CLT,它将返回工具的路径。像这样-
/Applications/Xcode.app/Contents/Developer
运行以下命令以查看CLT的版本:
pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
这将返回版本信息,输出将是这样的-
package-id: com.apple.pkg.CLTools_Executables
version: 8.2.0.0.1.1480973914
volume: /
location: /
install-time: 1486372375
在macOS Catalina以及可能的某些早期版本中,您可以使用以下命令找到命令行工具的安装位置:
xcode-select -p
又名 xcode-select --print-path
如果已安装,它将以以下方式响应:
/Library/Developer/CommandLineTools
要了解您在那里安装了哪个版本,可以使用:
xcode-select -v
又名 xcode-select --version
这将返回类似:
xcode-select version 2370.
但是,如果您尝试将其升级到最新版本(假设已安装),请使用以下方法:
xcode-select --install
您将收到以下回复:
xcode-select: error: command line tools are already installed, use "Software Update" to install updates
相当错误地给您留下了使用Spotlight所需的印象,找到了一个称为“软件更新”的东西。实际上,您需要在终端中继续并使用以下命令:
softwareupdate -i -a
又名 softwareupdate --install --all
它将尝试更新所有可能且可能会做出响应的一切:
Software Update Tool
Finding available software
No new software available.
要了解您的计算机上安装了哪些不同版本的Apple SDK,请使用以下命令:
xcodebuild -showsdks
我认为无论是否安装macOS版本,是否已安装最适合我查找命令行工具的最简单方法及其版本
$brew config
macOS:10.14.2-x86_64
CLT:10.1.0.0.1.1539992718
Xcode:10.1
当您正确安装了命令行工具并正确设置了路径时,会出现这种情况。
早些时候我的输出如下
macOS:10.14.2-x86_64
CLT:N / A
Xcode:10.1
尽管具有gcc并能正常工作且输出低于输出,但CLT被显示为N / A
$xcode-select -p
/Applications/Xcode.app/Contents/Developer
$pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
No receipt for 'com.apple.pkg.CLTools_Executables' found at '/'.
$brew doctor
Your system is ready to brew.
最终执行xcode-select --install解决了我的brew无法找到CLT来安装软件包的问题,如下所示。
Installing sphinx-doc dependency: python
Warning: Building python from source:
The bottle needs the Apple Command Line Tools to be installed.
You can install them, if desired, with:
xcode-select --install
从程序的角度来看,自制程序的人们会检查各种文件的存在,以确定是否安装了命令行工具。当前,它总是检查 /Library/Developer/CommandLineTools/usr/bin/git
并且还将检查/usr/include/iconv.h
OS版本是否为10.13或更低。
可以在这里找到清晰的说明:https://derflounder.wordpress.com/2013/11/15/xcode-command-line-tools-included-with-xcode-5-0-x-on-mavericks/
我发现这里没有任何现有的答案有帮助。
打开终端,并检查是否已经安装了Xcode:
xcode-select -p
作为回报,如果您得到以下信息:
/Library/Developer/CommandLineTools
这意味着您已经安装了Xcode。
您可以通过另一种方式检查是否已安装“ HomeBrew”,可以使用以下命令查看您是否具有Xcode及其版本:
brew config
最后,如果您没有Xcode,请点击此链接从Appstore下载Xcode。来自App Store的Xcode。
祝好运。