Lipo работает с терминала, но доступ запрещен из сценария bash

Если я запускаю это в терминале (на OSX Mavericks), все работает нормально:

lipo -create /Release-iphoneos/libMyNewLibrary.a /Release-iphonesimulator/libMyNewLibrary.a -output /Merged/libMyNewLibrary.a

Я не использовал sudo при запуске в терминале. Если я добавлю точно такой же код в сценарий bash, я получу следующую ошибку:

фатальная ошибка: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo: невозможно создать временный выходной файл: /libMyNewLibrary.a.lipo (разрешение отклонено)

Остальная часть скрипта bash работает нормально (генерация ios и sim libs с помощью xcodebuild), поэтому я не уверен, почему команда lipo не работает. Обе библиотеки, которые нужно объединить, существуют до того, как был сделан вызов lipo, afaik (единственный пост, который я видел с этой ошибкой, предположил, что это может быть причиной).

Есть ли еще один шаг, который необходимо предпринять, чтобы lipo работал из скрипта bash?


person TheBestBigAl    schedule 17.11.2014    source источник


Ответы (1)


lipo не создает компоненты пути для пути output, проверьте, существует ли каталог, и создайте папки в противном случае.

person A-Live    schedule 17.11.2014
comment
Спасибо, проблема была именно в этом. - person TheBestBigAl; 17.11.2014