У меня есть macbook pro с OS X 10.8.2. XCode установлен. Я знаю это, как он появляется в каталоге Applications. Также есть файлы xcodebuild и xcode-select в /usr/bin Мне нужно знать, установлены ли средства командной строки. Есть ли команда для этого? Что я могу сделать, чтобы проверить, установлен ли XCode CLT, и если да, чтобы найти установленную версию?
Как проверить, установлены ли средства командной строки
Ответ 1
10.10 Обновление Йосемиты:
Просто введите gcc
или make
в командной строке! OSX будет знать, что у вас нет инструментов командной строки и предлагается установить их!
Чтобы проверить, существуют ли они, xcode-select -p
, возвращаемое значение будет 2
, если они НЕ существуют, и 0
, если они это делают (а также каталог).
10.9 Обновление Mavericks:
Используйте pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
10.8 Обновление:
Вариант 1: Роб Нейпир предложил использовать 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] [[email protected] ~]$ 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";
};
}
Ответ 2
Yosemite
Ниже приведены несколько дополнительных шагов на новом 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.
Введите пароль администратора, затем новый активированный пароль 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.
Нажмите, чтобы ввести лицензионное соглашение.
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
Mavericks
С Mavericks это немного отличается теперь.
Когда инструменты не были найдены, это возвращает команда 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 '/'.
Также у меня был компонент для CLT, который был выбран и установлен в разделе загрузки xcode раньше, но похоже, что он не дошел до терминала...
Надеюсь, что это поможет.
Ответ 3
В 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
Ответ 4
Перейдите в Приложения > Xcode > настройки > закачки
Здесь вы должны увидеть инструменты командной строки для установки.
Ответ 5
Чтобы проверить, запущены ли инструменты командной строки, выполните следующие действия:
xcode-select --version
// if installed you will see the below with the version found in your system
// xcode-select version 1234.
Если инструменты командной строки не установлены, выполните:
xcode-select --install
Ответ 6
Ясное объяснение можно найти здесь: https://derflounder.wordpress.com/2013/11/15/xcode-command-line-tools-included-with-xcode-5-0-x-on-mavericks/
Я не нашел здесь никаких полезных ответов.