Ошибка утверждения компоновщика xcodebuild

Я столкнулся с этой ошибкой утверждения ld, создавая динамическую инфраструктуру iOS в командной строке с помощью xcodebuild.


0 0x10163b342 __assert_rtn + 144 1 0x101678a3a archive::File<arm64>::makeObjectFileForMember(archive::File<arm64>::Entry const*) const + 1138 2 0x1016783e8 archive::File<arm64>::justInTimeforEachAtom(char const*, ld::File::AtomHandler&) const + 122 3 0x10168ea75 ld::tool::InputFiles::searchLibraries(char const*, bool, bool, bool, ld::File::AtomHandler&) const + 265 4 0x101697db8 ld::tool::Resolver::resolveUndefines() + 160 5 0x10169a117 ld::tool::Resolver::resolve() + 79 6 0x10163c060 main + 812 7 0x7fff9dd4c5ad start + 1 A linker snapshot was created at: /tmp/MyKit-2016-02-31-154836.ld-snapshot ld: Assertion failed: (memberIndex != 0), function makeObjectFileForMember, file /Library/Caches/com.apple.xbs/Sources/ld64/ld64-253.9/src/ld/parsers/archive_file.cpp, line 355. clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Согласно исходному коду archive_file.cpp ( http://www.opensource.apple.com/source/ld64/ld64-253.3/src/ld/parsers/archive_file.cpp ), похоже, что есть некоторая символьная коррупция, а ld – загрузка библиотеки. Но кроме этого я не знаю, как эта проблема может быть исправлена.

Эта проблема возникает только тогда, когда я пытаюсь создать свою фреймворк с помощью битового кода, добавив флаг компилятора «-fembed-bitcode».

Кроме того, в моей команде ld я пытаюсь установить связь с несколькими статическими библиотеками, одна из которых -> 4.25 ГБ (с встроенным встроенным битовым кодеком), и этот размер превышает максимальное значение 32-битного целого числа без знака (~ 3,99 ГБ) , Я ранее сталкивался с несколькими проблемами с libtool, связанными с невозможностью обработки больших двоичных библиотек, поэтому это одно из моих подозрений.

Интересно, видел ли кто-нибудь подобные проблемы или выяснил, как это исправить? благодаря

несколько связанных вопросов

Weird xCode linker error Я никогда не видел, прежде чем говорить «Assertion failed»

https://github.com/SciRuby/nmatrix/issues/69

http://lists.llvm.org/pipermail/llvm-dev/2013-October/066722.html

https://github.com/TrinityCore/TrinityCore/issues/14689

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57438

2 Solutions collect form web for “Ошибка утверждения компоновщика xcodebuild”

Вы хотите прочитать объяснение своей ошибки: ld: Assertion failed: (memberIndex != 0) ... ? Перейдите по этой ссылке

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

TL; Версия DR:

  1. Очистите свой проект с помощью Command-Option-Shift-K . Также выберите « Window > Organizer и перейдите на вкладку « Projects ». Нажмите правую стрелку справа от имени папки Derived Data , удалите папку Derived Data и перезапустите XCode.

  2. перейдите в « Build Settings вашего project's settings => Найти Linking->Other linker flags => Добавить -v . Это покажет вам точный поврежденный файл, который вызывает вашу ошибку, если он все еще встречается. Если у вас есть ошибка снова, напишите здесь путь к поврежденному файлу, мы можем работать оттуда.

  3. Причина вашей ошибки связана с повреждением одной из ваших статических библиотек . Вы можете удалить свою 4.25gb lib и перестроить снова, чтобы убедиться, что это проблема. Он находится под target settings -> build phases -> link binary with libraries вашего проекта target settings -> build phases -> link binary with libraries . Если ошибка исчезнет, ​​это может быть так. В этом случае, не забывайте указывать имя lib?

Просто добавив к ответу oasisweng.

Предоставляет ли одна из следующих справок ?:

  • Каждый раз, когда я обновляю Xcode, я получаю ошибки компоновщика с установленным Brew GCC
  • Вы зависимы от любых зависимостей, у которых нет Биткода ?
  • Подобная ошибка сообщается на форуме Unity ; Посмотреть последнее сообщение в теме
  • Проблемы с реализацией вида контейнера
  • ViewController.Type не имеет имени пользователя «answerOne» - SWIFT
  • Именование приложения iOS для отправки
  • Определить тип конфигурации сборки цели из статической библиотеки
  • XCode не останавливается на точке останова в методе, вызванном из LLDB
  • Добавление атрибутного текста в UITextView непосредственно в Storyboard
  • У вас нет прав на использование этой службы. Ошибка загрузки приложения iTunes
  • Сделать прокруткой UIView
  • CCLabelTTF не работает в iOS 6.1
  • Несоответствие в передаче данных между классами
  • Запуск приложения iOS в устройстве с iOS 5.1.1 с использованием Xcode 5
  • Interesting Posts

    Google Maps в iOS-интеграции

    Как предотвратить дополнительный просмотр, отображающий код доступа при использовании Google OAuth 2.0

    Как использовать код C (libqrencode) в проекте iOS

    Приложение iOS для проверки уровня заряда батареи в фоновом режиме

    Как получить платную и бесплатную версию приложения для приложения iOS FB App ID?

    Использование многократных маяков (просмотр каждого отдельного маяка)

    Xcode 6 – подсветка синтаксиса / завершение не работает

    Распечатать тело запроса Alamofire

    iOS загружает непотребимый контент с сервера с покупкой в ​​приложении

    iOS youtube player и AIR

    отображение видео, добавление поля UIText и сохранение его на альбоме iphone

    Как инициализировать свойство в iOS UITableViewController

    Как заставить кнопку постоянно вызывать функцию при удержании (SpriteKit)

    Кнопка ввода InputToolbar не работает

    Что означает «построитель событий XCode 4.2» «Определяет контекст» и «Обеспечить контекст»?

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.