Файл libCordova.a отсутствует в PhoneGap 2.9

Можете ли вы помочь мне, пожалуйста? Я использую XCode версии 4.6.3 и PhoneGap версии 2.9. В Simulator проект работает нормально, но когда я хочу создать файл IPA, сборка всегда завершается неудачно.

Сообщение показывается как ниже:

file not found: /Users/admin/.../libCordova.a
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Я нашел некоторое обсуждение по этому вопросу. Большая часть решения - это как (1) изменить СТРОИТЕЛЬНУЮ АКТИВНУЮ АРХИТЕКТУРУ ТОЛЬКО на ДА, (2) изменить АРХИТЕКТУРУ только на armv7, (3) обновить проект после его создания... и т. Д. Но никто из тех, кто работает на меня.

Плз помогите все равно.

Заранее спасибо.

5 ответов

Решение

Выполните следующие действия, чтобы решить эту проблему:

  1. Зайдите в настройки проекта и откройте вкладку. Искать "Другие флаги компоновщика"
  2. Двойной щелчок на флагах компоновщика для выпуска и изменения ${TARGET_BUILD_DIR}/libCordova.a в ${BUILT_PRODUCTS_DIR}/libCordova.a
  3. Сделайте то же самое для отладки
  4. Очистить и снова собрать архив

В дополнение к нескольким другим предложениям и публикациям я обнаружил, что у меня возникла эта проблема только в моих сборках AdHoc.

Проблема для меня заключалась в том, что подпроект CordovaLib не имел конфигурации AdHoc. Как только я добавил конфигурацию "AdHoc" в подпроект CordovaLib, это начало работать.

введите описание изображения здесь

Пожалуйста, обратите внимание, что я понял это во время отладки, потому что, если я установлю "Редактировать схему"> "Конфигурация сборки архива" на "выпуск", он будет работать нормально, но если установить значение "AdHoc", это даст мне ошибку ссылки, сообщающую, что этот файл не может быть найденный:

/Users/jason/Library/Developer/Xcode/DerivedData/MommyNearest-ceourmykvgxdekbkmzenuvhcfnzk/Build/Intermediates/ArchiveIntermediates/MommyNearest/BuildProductsPath/Adhoc-iphoneos/libCordova.a

Если ответ Prems не устранил проблему, попробуйте сначала создать проект CordovaLib. После этого я смог построить свой проект.

Если вы проверите предложение компоновщика выше и все еще не работает. Убедитесь, что проект Cordova имеет то же имя конфигурации. Если ваш основной проект имеет конфигурации "Debug, Release и Production". Добавьте те же конфигурации в проект Cordova. Постройте Cordova, а затем постройте свой проект.

Если вы используете Xcode 5.0, делайте с точностью до наоборот и все работает.

Другие вопросы по тегам