2016-12-06 3 views
0

Я добавил логин для входа в мой xcode. Однако эти ошибки сработали. Я не знаю, как исправить эту ошибку. пожалуйста помогите.Apple Mach-O Linker (Id) Ошибка (wechat)

Apple Mach-O Linker (Id) Error 
"__wechatstore",referenced from: 
_Wechat__wechatstore_m13_992 in Bulk_Assembly-CSharp_1.o 
_Wechat_wechatstore_m13_995 in Bulk_Assembly-CSharp_1.o 
(maybe you meant: _Wechat__wechatstore_m13_992) 
Symbol(s) not found for architecture arm64 
Linker command failed with exit code 1 (use -v to see invocation) 
Activity Log Complete 
+0

Является ли библиотека скомпилированной для x86 или ARM? Приложение, похоже, предназначено для ARM64. –

+0

Вы имеете в виду, что x86 или ARM dragon не должны находиться в библиотеке? –

+0

Кажется, вы скомпилировали библиотеку для другой архитектуры процессора, возможно, x86. Вам нужно скомпилировать его для ARM64. –

ответ

0

сообщение означает, что символ __wechatstore (который, вероятно, указатель на структуру данных) не может быть найден в любом arm64 двоичном, подводимой к линкеру. Таким образом, есть пара вещей, которые могут пойти не так:

  • Библиотека с этим символом может не попасть в сборник. (когда сборка завершится с ошибкой в ​​Xcode, перейдите на вкладку «отчет» в навигаторе, щелкните на сбое сборки и проверьте неудачную задачу «Ссылка ...»

  • Библиотека может быть включена, но не скомпилирована для arm64. Теперь, когда я думаю об этом, я думаю, что это самый вероятный случай. arm64 поддержка - это более новое требование от Apple для поддержки iPad Pro. Я бы согласился утверждать, что библиотека, возможно, включает только armv7. которые архитектуры включены, выполнив команду file на библиотеке

Возможное временное решение прекратить сбор для arm64 и попробовать просто компиляцией ARMv7:., чтобы сделать это пойти в PROJEC t> Настройки сборки> Архитектуры> Архитектура и изменение от $ (ARCHS_STANDARD) $(ARCHS_STANDARD) до armv7. (nb: idk, но я бы не стал пытаться представить двоичный файл без подходящей архитектуры для appstore)

+0

спасибо. Однако это была проблема с вызовами функций. Unity называется функцией, которая не находится в xcode. –