2016-01-07 3 views
0

Я получал эту досадную ошибку BCSymbolMap, описанную here. При проверке архива я не мог одновременно включать символы приложения и биткод.X̶c̶o̶d̶e̶ Realm продолжает удалять файлы символов

Чтобы решить эту проблему, я удалил все свои фреймворки и добавил их обратно. Когда я удалил Realm и перетащил его обратно в свои встроенные двоичные файлы, приложение начало проверять штраф.

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

Итак, я снова удалил Realm и снова перетащил его в свои встроенные двоичные файлы ... снова архивирован и проверен ... и он работает.

Прошло еще некоторое время, и он снова переставал работать, я делал это снова и снова, и тогда это работает ... и так оно и есть.

Похоже, что каждый раз, когда я хочу проверить архив для отправки в iTunes connect, мне нужно будет удалить Realm и снова добавить его обратно. Это очень раздражает.

Любые идеи о том, что здесь происходит?


Edit:

кажется Xcode сохраняет удаление файлов символов, я не знаю, почему.

Я добавил рамки Realm на источник управления, заменить их новыми, я только что загрузили и отдал их мерзавец, а затем я получил это:

enter image description here

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

enter image description here

сейчас файлы отображаются с помощью D, потому что они были удалены! Но я их не удалял!

У меня также есть другие фреймворки, установленные с их собственными файлами символов, и те, которые не удаляются, не имеют. Очень странно ...


Edit 2:

Когда я заметил, Xcode был удаления файлов символов я изменил разрешения на рамочные сервере, только для чтения. Тогда я построил свой проект, и увы:

enter image description here

strip-frameworks.sh скрипт пытается rm файлы символов, но теперь я не позволил бы его.

Так что я взял заглянуть в сценарий ...

if [ "$ACTION" = "install" ]; then 
    echo "Copy .bcsymbolmap files to .xcarchive" 
    find . -name '*.bcsymbolmap' -type f -exec mv {} "${CONFIGURATION_BUILD_DIR}" \; 
else 
    # Delete *.bcsymbolmap files from framework bundle unless archiving 
    find . -name '*.bcsymbolmap' -type f -exec rm -rf "{}" +\; 
fi 

Почему это необходимо, чтобы удалить символ файлы, если в архиве? Независимо от причины, это не работает должным образом. Я просто удалил эту часть из скрипта, и теперь все работает нормально.

+0

Вы используете сценарий 'strip-frameworks.sh' как часть вашего процесса архивации, как описано в инструкциях по установке Realm? https://realm.io/docs/objc/latest/#installation – jpsim

+0

Да, я. Разве это не привело бы к этому? Я просто дважды проверил его, но, возможно, я делаю что-то неправильно. :/ – dbmrq

+0

Нет, я не знаю, что могло бы вызвать это. Вы сообщили об этом радаре? Похоже, это может быть ошибка Xcode. – jpsim

ответ

0

Это связано с тем, что файлы BCSymbolMap обрабатываются в скрипте Realm's strip-frameworks.sh, который недавно был исправлен в #3032, но еще не включен в официальную версию. Следующий релиз Realm будет включать исправление.

+0

Отлично. Спасибо. :) – dbmrq

Смежные вопросы