ar6unity iOS上的Apple Mach-O链接器(Id)错误

我可以使用https://github.com/artoolkit/ar6unity-wiki/wiki/Setting-Up-Your-First-ARToolKit-for-Unity-Scene在Mac上运行该示例

但当我按照这个指令,我得到链接器错误: https : //github.com/artoolkit/ar6unity-wiki/wiki/ARToolKit-for-Unity-on-iOS

这是错误:

在此处输入图像描述

Showing Recent Issues Ld /Users/myusername/Library/Developer/Xcode/DerivedData/Unity-iPhone-cvlzbaxfkypoavdlufphmggovkrp/Build/Products/Debug-iphoneos/ARToolkittest1.app/ARToolkittest1 normal arm64 cd /Users/Shared/Unity/ARToolkittest1/ARToolkittest1 export IPHONEOS_DEPLOYMENT_TARGET=9.0 export PATH="/Users/myusername/Downloads/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Users/myusername/Downloads/Xcode-beta.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Users/myusername/Downloads/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch arm64 -isysroot /Users/myusername/Downloads/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.0.sdk -L/Users/myusername/Library/Developer/Xcode/DerivedData/Unity-iPhone-cvlzbaxfkypoavdlufphmggovkrp/Build/Products/Debug-iphoneos -L/Users/Shared/Unity/ARToolkittest1/ARToolkittest1 -L/Users/Shared/Unity/ARToolkittest1/ARToolkittest1/Libraries -L/Users/Shared/Unity/ARToolkittest1/ARToolkittest1/Libraries/Plugins/iOS -F/Users/myusername/Library/Developer/Xcode/DerivedData/Unity-iPhone-cvlzbaxfkypoavdlufphmggovkrp/Build/Products/Debug-iphoneos -filelist /Users/myusername/Library/Developer/Xcode/DerivedData/Unity-iPhone-cvlzbaxfkypoavdlufphmggovkrp/Build/Intermediates.noindex/Unity-iPhone.build/Debug-iphoneos/Unity-iPhone.build/Objects-normal/arm64/ARToolkittest1.LinkFileList -Xlinker -map -Xlinker /Users/myusername/Library/Developer/Xcode/DerivedData/Unity-iPhone-cvlzbaxfkypoavdlufphmggovkrp/Build/Intermediates.noindex/Unity-iPhone.build/Debug-iphoneos/Unity-iPhone.build/ARToolkittest1-LinkMap-normal-arm64.txt -miphoneos-version-min=9.0 -dead_strip -Xlinker -object_path_lto -Xlinker /Users/myusername/Library/Developer/Xcode/DerivedData/Unity-iPhone-cvlzbaxfkypoavdlufphmggovkrp/Build/Intermediates.noindex/Unity-iPhone.build/Debug-iphoneos/Unity-iPhone.build/Objects-normal/arm64/ARToolkittest1_lto.o -Xlinker -no_deduplicate -stdlib=libc++ -fobjc-arc -fobjc-link-runtime -weak_framework CoreMotion -weak-lSystem -lstdc++.6 -framework Accelerate -lsqlite3 -lz -framework Security -framework MediaToolbox -liPhone-lib -framework CoreText -framework AudioToolbox -weak_framework AVFoundation -framework CFNetwork -framework CoreGraphics -framework CoreLocation -framework CoreMedia -weak_framework CoreMotion -framework CoreVideo -framework Foundation -framework MediaPlayer -framework OpenAL -framework OpenGLES -framework QuartzCore -framework SystemConfiguration -framework UIKit -liconv.2 -lAR6 -lcurl -ljpeg -framework GameKit -weak_framework Metal -Xlinker -dependency_info -Xlinker /Users/myusername/Library/Developer/Xcode/DerivedData/Unity-iPhone-cvlzbaxfkypoavdlufphmggovkrp/Build/Intermediates.noindex/Unity-iPhone.build/Debug-iphoneos/Unity-iPhone.build/Objects-normal/arm64/ARToolkittest1_dependency_info.dat -o /Users/myusername/Library/Developer/Xcode/DerivedData/Unity-iPhone-cvlzbaxfkypoavdlufphmggovkrp/Build/Products/Debug-iphoneos/ARToolkittest1.app/ARToolkittest1 Undefined symbols for architecture arm64: "typeinfo for boost::archive::detail::basic_pointer_oserializer", referenced from: l3492 in libAR6.a(libAR6.a-arm64-master.o) "typeinfo for boost::serialization::typeid_system::extended_type_info_typeid_0", referenced from: l3438 in libAR6.a(libAR6.a-arm64-master.o) l3444 in libAR6.a(libAR6.a-arm64-master.o) l3450 in libAR6.a(libAR6.a-arm64-master.o) l3456 in libAR6.a(libAR6.a-arm64-master.o) l3462 in libAR6.a(libAR6.a-arm64-master.o) l3470 in libAR6.a(libAR6.a-arm64-master.o) l3477 in libAR6.a(libAR6.a-arm64-master.o) ... "typeinfo for boost::archive::detail::basic_pointer_iserializer", referenced from: l3547 in libAR6.a(libAR6.a-arm64-master.o) "boost::serialization::typeid_system::extended_type_info_typeid_0::is_equal(boost::serialization::extended_type_info const&) const", referenced from: vtable for boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::extended_type_info_typeid<std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::pair<int const, std::__1::pair > > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::extended_type_info_typeid<std::__1::pair<int const, std::__1::pair > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::pair > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::extended_type_info_typeid<std::__1::pair > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid > in libAR6.a(libAR6.a-arm64-master.o) ... "boost::archive::detail::basic_iarchive::next_object_pointer(void*)", referenced from: boost::archive::detail::pointer_iserializer<boost::archive::text_iarchive, artvision::Node >::load_object_ptr(boost::archive::detail::basic_iarchive&, void*, unsigned int) const in libAR6.a(libAR6.a-arm64-master.o) "typeinfo for boost::archive::detail::basic_oserializer", referenced from: l3433 in libAR6.a(libAR6.a-arm64-master.o) l3441 in libAR6.a(libAR6.a-arm64-master.o) l3447 in libAR6.a(libAR6.a-arm64-master.o) l3453 in libAR6.a(libAR6.a-arm64-master.o) l3459 in libAR6.a(libAR6.a-arm64-master.o) l3467 in libAR6.a(libAR6.a-arm64-master.o) l3474 in libAR6.a(libAR6.a-arm64-master.o) ... "boost::serialization::void_downcast(boost::serialization::extended_type_info const&, boost::serialization::extended_type_info const&, void const*)", referenced from: void boost::serialization::shared_ptr_helper::reset<artvision::Node >(std::__1::shared_ptr<artvision::Node >&, artvision::Node*) in libAR6.a(libAR6.a-arm64-master.o) "boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&)", referenced from: void boost::archive::detail::load_non_pointer_type::load_standard::invoke<std::__1::pair<int const, std::__1::pair > >(boost::archive::text_iarchive&, std::__1::pair<int const, std::__1::pair > const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::load_non_pointer_type::load_standard::invoke<std::__1::pair >(boost::archive::text_iarchive&, std::__1::pair const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::load_non_pointer_type::load_standard::invoke<std::__1::vector<unsigned char, std::__1::allocator > >(boost::archive::text_iarchive&, std::__1::vector<unsigned char, std::__1::allocator > const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::load_non_pointer_type::load_standard::invoke<std::__1::vector<artvision::FeaturePoint, std::__1::allocator > >(boost::archive::text_iarchive&, std::__1::vector<artvision::FeaturePoint, std::__1::allocator > const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::load_non_pointer_type::load_standard::invoke(boost::archive::text_iarchive&, artvision::FeaturePoint const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::load_non_pointer_type::load_standard::invoke<std::__1::shared_ptr<artvision::Node > >(boost::archive::text_iarchive&, std::__1::shared_ptr<artvision::Node > const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::load_non_pointer_type::load_standard::invoke<std::__1::vector<int, std::__1::allocator > >(boost::archive::text_iarchive&, std::__1::vector<int, std::__1::allocator > const&) in libAR6.a(libAR6.a-arm64-master.o) ... "boost::serialization::typeid_system::extended_type_info_typeid_0::is_less_than(boost::serialization::extended_type_info const&) const", referenced from: vtable for boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::extended_type_info_typeid<std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::pair<int const, std::__1::pair > > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::extended_type_info_typeid<std::__1::pair<int const, std::__1::pair > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::pair > > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::extended_type_info_typeid<std::__1::pair > in libAR6.a(libAR6.a-arm64-master.o) vtable for boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid > in libAR6.a(libAR6.a-arm64-master.o) ... "boost::archive::detail::basic_iarchive::reset_object_address(void const*, void const*)", referenced from: boost::serialization::stl::archive_input_unordered_map<boost::archive::text_iarchive, std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > >::operator()(boost::archive::text_iarchive&, std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > >&, unsigned int) in libAR6.a(libAR6.a-arm64-master.o) "boost::archive::detail::basic_iarchive::get_library_version() const", referenced from: void boost::serialization::stl::load_unordered_collection<boost::archive::text_iarchive, std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > >, boost::serialization::stl::archive_input_unordered_map<boost::archive::text_iarchive, std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > > >(boost::archive::text_iarchive&, std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > >&) in libAR6.a(libAR6.a-arm64-master.o) void boost::serialization::load<boost::archive::text_iarchive, unsigned char, std::__1::allocator >(boost::archive::text_iarchive&, std::__1::vector<unsigned char, std::__1::allocator >&, unsigned int, mpl_::bool_) in libAR6.a(libAR6.a-arm64-master.o) void boost::serialization::load<boost::archive::text_iarchive, artvision::FeaturePoint, std::__1::allocator >(boost::archive::text_iarchive&, std::__1::vector<artvision::FeaturePoint, std::__1::allocator >&, unsigned int, mpl_::bool_) in libAR6.a(libAR6.a-arm64-master.o) void boost::serialization::load<boost::archive::text_iarchive, std::__1::shared_ptr<artvision::Node >, std::__1::allocator<std::__1::shared_ptr<artvision::Node > > >(boost::archive::text_iarchive&, std::__1::vector<std::__1::shared_ptr<artvision::Node >, std::__1::allocator<std::__1::shared_ptr<artvision::Node > > >&, unsigned int, mpl_::bool_) in libAR6.a(libAR6.a-arm64-master.o) void boost::serialization::load<boost::archive::text_iarchive, int, std::__1::allocator >(boost::archive::text_iarchive&, std::__1::vector<int, std::__1::allocator >&, unsigned int, mpl_::bool_) in libAR6.a(libAR6.a-arm64-master.o) "boost::serialization::typeid_system::extended_type_info_typeid_0::type_unregister()", referenced from: boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > > >::~singleton_wrapper() in libAR6.a(libAR6.a-arm64-master.o) boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > > >::~singleton_wrapper() in libAR6.a(libAR6.a-arm64-master.o) boost::serialization::extended_type_info_typeid<std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > >::~extended_type_info_typeid() in libAR6.a(libAR6.a-arm64-master.o) boost::serialization::extended_type_info_typeid<std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > >::~extended_type_info_typeid() in libAR6.a(libAR6.a-arm64-master.o) boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::pair<int const, std::__1::pair > > >::~singleton_wrapper() in libAR6.a(libAR6.a-arm64-master.o) boost::serialization::detail::singleton_wrapper<boost::serialization::extended_type_info_typeid<std::__1::pair<int const, std::__1::pair > > >::~singleton_wrapper() in libAR6.a(libAR6.a-arm64-master.o) boost::serialization::extended_type_info_typeid<std::__1::pair<int const, std::__1::pair > >::~extended_type_info_typeid() in libAR6.a(libAR6.a-arm64-master.o) ... "boost::archive::basic_text_oarchive::newtoken()", referenced from: void boost::serialization::stl::save_unordered_collection<boost::archive::text_oarchive, std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > >(boost::archive::text_oarchive&, std::__1::unordered_map<int, std::__1::pair, std::__1::hash, std::__1::equal_to, std::__1::allocator<std::__1::pair<int const, std::__1::pair > > > const&) in libAR6.a(libAR6.a-arm64-master.o) boost::archive::detail::oserializer<boost::archive::text_oarchive, std::__1::pair<int const, std::__1::pair > >::save_object_data(boost::archive::detail::basic_oarchive&, void const*) const in libAR6.a(libAR6.a-arm64-master.o) void boost::serialization::serialize(boost::archive::text_oarchive&, std::__1::pair&, unsigned int) in libAR6.a(libAR6.a-arm64-master.o) boost::archive::detail::oserializer::save_object_data(boost::archive::detail::basic_oarchive&, void const*) const in libAR6.a(libAR6.a-arm64-master.o) void boost::serialization::stl::save_collection<boost::archive::text_oarchive, std::__1::vector<unsigned char, std::__1::allocator > >(boost::archive::text_oarchive&, std::__1::vector<unsigned char, std::__1::allocator > const&, boost::serialization::collection_size_type) in libAR6.a(libAR6.a-arm64-master.o) void boost::serialization::stl::save_collection<boost::archive::text_oarchive, std::__1::vector<artvision::FeaturePoint, std::__1::allocator > >(boost::archive::text_oarchive&, std::__1::vector<artvision::FeaturePoint, std::__1::allocator > const&, boost::serialization::collection_size_type) in libAR6.a(libAR6.a-arm64-master.o) void boost::serialization::serialize(boost::archive::text_oarchive&, artvision::FeaturePoint&, unsigned int) in libAR6.a(libAR6.a-arm64-master.o) ... "boost::serialization::void_upcast(boost::serialization::extended_type_info const&, boost::serialization::extended_type_info const&, void const*)", referenced from: artvision::Node* boost::archive::detail::load_pointer_type::pointer_tweak<artvision::Node >(boost::serialization::extended_type_info const&, void const*, artvision::Node const&) in libAR6.a(libAR6.a-arm64-master.o) "boost::archive::detail::archive_serializer_map::insert(boost::archive::detail::basic_serializer const*)", referenced from: boost::serialization::singleton<boost::archive::detail::pointer_oserializer<boost::archive::text_oarchive, artvision::Node > >::get_instance() in libAR6.a(libAR6.a-arm64-master.o) "boost::archive::archive_exception::archive_exception(boost::archive::archive_exception::exception_code, char const*, char const*)", referenced from: void boost::archive::basic_text_oprimitive<std::__1::basic_ostream<char, std::__1::char_traits > >::save_impl(unsigned int const&, mpl_::bool_&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits > >::load(unsigned int&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::basic_text_oprimitive<std::__1::basic_ostream<char, std::__1::char_traits > >::save_impl(boost::serialization::collection_size_type const&, mpl_::bool_&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::basic_text_oprimitive<std::__1::basic_ostream<char, std::__1::char_traits > >::save_impl(int const&, mpl_::bool_&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::basic_text_oprimitive<std::__1::basic_ostream<char, std::__1::char_traits > >::save_impl(unsigned long const&, mpl_::bool_&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::basic_text_oprimitive<std::__1::basic_ostream<char, std::__1::char_traits > >::save_impl(unsigned short const&, mpl_::bool_&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::basic_text_oprimitive<std::__1::basic_ostream<char, std::__1::char_traits > >::save_impl(float const&, mpl_::bool_&) in libAR6.a(libAR6.a-arm64-master.o) ... "boost::archive::detail::basic_iarchive::load_pointer(void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&))", referenced from: void boost::serialization::load<boost::archive::text_iarchive, artvision::Node >(boost::archive::text_iarchive&, std::__1::shared_ptr<artvision::Node >&, unsigned int) in libAR6.a(libAR6.a-arm64-master.o) "boost::archive::detail::basic_oarchive::save_object(void const*, boost::archive::detail::basic_oserializer const&)", referenced from: void boost::archive::detail::save_non_pointer_type::save_standard::invoke<std::__1::pair<int const, std::__1::pair > >(boost::archive::text_oarchive&, std::__1::pair<int const, std::__1::pair > const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::save_non_pointer_type::save_standard::invoke<std::__1::pair >(boost::archive::text_oarchive&, std::__1::pair const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::save_non_pointer_type::save_standard::invoke<std::__1::vector<unsigned char, std::__1::allocator > >(boost::archive::text_oarchive&, std::__1::vector<unsigned char, std::__1::allocator > const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::save_non_pointer_type::save_standard::invoke<std::__1::vector<artvision::FeaturePoint, std::__1::allocator > >(boost::archive::text_oarchive&, std::__1::vector<artvision::FeaturePoint, std::__1::allocator > const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::save_non_pointer_type::save_standard::invoke(boost::archive::text_oarchive&, artvision::FeaturePoint const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::save_non_pointer_type::save_standard::invoke<std::__1::shared_ptr<artvision::Node > >(boost::archive::text_oarchive&, std::__1::shared_ptr<artvision::Node > const&) in libAR6.a(libAR6.a-arm64-master.o) void boost::archive::detail::save_non_pointer_type::save_standard::invoke<artvision::BinarykMedoids >(boost::archive::text_oarchive&, artvision::BinarykMedoids const&) in libAR6.a(libAR6.a-arm64-master.o) ... "boost::archive::detail::basic_oserializer::~basic_oserializer()", referenced from: 

知道如何解决这个问题吗?

该论坛发布了一个解决方案,它可以运行https://archive.artoolkit.org/community/forums/viewtopic.php?f=28&t=28204