ChartBoost - ошибка компоновщика Apple Mach-O
Я строю iOS-проект из Unity и пытался скомпилировать его. Я закончил со следующей ошибкой. Я реализовал ChartBoost в своем проекте Unity.
ld: warning: ignoring file ../libChartboost.a, missing required architecture i386 in file ../libChartboost.a (2 slices)
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_CBAnalytics", referenced from:
objc-class-ref in ChartBoostBinding.o
"_OBJC_CLASS_$_Chartboost", referenced from:
objc-class-ref in ChartBoostBinding.o
objc-class-ref in ChartBoostManager.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Я искал пару существующих ответов, но, похоже, ничего не работает. Я не уверен, как это исправить. Любые предложения будут высоко оценены.
2 ответа
Хотя мы можем сделать толстую библиотеку, как прокомментировал @trojanfoe, но в настоящее время libChartBoost.a доступна только для ARM, но не для архитектуры i386. Следовательно, эта программа не будет работать на симуляторе и должна выполняться на устройстве с архитектурой ARM.
Для чего это стоит, 4.0 и 4.1 не имеют кода i386, включенного в библиотеку.
Поддержка Chartboost говорит мне, что 4.2 делает. И это так - однако в сборке i386 также есть ошибка, которая мешает его компиляции! Может быть в 4.3...
Или, если вам действительно не нужны функции 4.X - последняя версия 3.X пока работает отлично.