Xcode 5.1 не может найти утилиту "make", а не инструмент разработчика или PATH

66
5

Я пытаюсь следовать этим указаниям для установки буферов протокола Google. После создания скрипта я пытаюсь запустить его с помощью следующей команды:

$ ./build-proto-ios.sh

Я получаю следующий результат:

mkdir: ios-build: File exists
Platform is iPhoneSimulator
./build-proto-ios.sh: line 40: ./configure: No such file or directory
make: error: unable to find utility "make", not a developer tool or in PATH
make: error: unable to find utility "make", not a developer tool or in PATH
cp: src/.libs/libprotobuf-lite.a: No such file or directory
Platform is iPhoneOS
./build-proto-ios.sh: line 40: ./configure: No such file or directory
make: error: unable to find utility "make", not a developer tool or in PATH
make: error: unable to find utility "make", not a developer tool or in PATH
cp: src/.libs/libprotobuf-lite.a: No such file or directory
Platform is iPhoneOS
./build-proto-ios.sh: line 40: ./configure: No such file or directory
make: error: unable to find utility "make", not a developer tool or in PATH
make: error: unable to find utility "make", not a developer tool or in PATH
cp: src/.libs/libprotobuf-lite.a: No such file or directory
make: error: unable to find utility "make", not a developer tool or in PATH
fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo: can't open input file: ios-build/libprotobuf-lite-armv7.a (No such file or directory)

Итак, я искал информацию о:

не удалось найти утилиту "make", а не инструмент разработчика или PATH

Я нашел эту информацию для установки инструментов командной строки Xcode, потому что я думал, что это может быть причиной. Но даже после установки последних инструментов командной строки для OS X Mavericks, я все еще получаю эту ошибку.

Есть идеи?

спросил(а) 2014-05-23T21:29:00+04:00 6 лет, 1 месяц назад
1
Решение
55

Похоже, это не ваша реальная проблема. Когда скрипт запущен, он ищет включенный make в папке iOS 6... который, вероятно, не существует.

Просмотрите https://gist.github.com/PR3x/0fde040902ed4e9a1a61 для скрипта, который будет строить protobuf в качестве толстой библиотеки для вас. Просто поместите его в новую папку, chmod +x и запустите. (На основе qaru.site/questions/28328/...)

Следует отметить, что вам нужно будет изменить все созданные .pb.* Файлы, чтобы использовать пространство имен ::google_public: вместо ::google: поскольку Apple использует это внутренне.

Другое дело, что это работает только для 32-битного ARM и симулятора. 64-битная ARM (iPhone 5s) еще не построена.

Удачи!

ответил(а) 2014-05-24T00:57:00+04:00 6 лет, 1 месяц назад
54

Make включен в Xcode. Вам не нужно устанавливать инструменты командной строки для его использования. Он живет внутри приложения Xcode:

/Applications/Xcode.app/Contents/Developer/usr/bin/make

И можно получить доступ с помощью xcrun.

xcrun make

Это может по-прежнему сбой, если по какой-либо причине активный каталог разработчика не установлен или неверен. Это может произойти, если вы переместили Xcode, например.

Установите его с помощью xcode-select

sudo xcode-select -switch/Applications/Xcode.app/Contents/Developer

Убедитесь, что вы можете получить доступ, используя эти методы из сеанса командной строки. Если возможно, сценарии создания прото-буферов, скорее всего, будут проблемой.

ответил(а) 2014-05-23T21:43:00+04:00 6 лет, 1 месяц назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема