2017-10-03 5 views
0

Je travaille sur la mise à jour d'un projet cocos2d-x existant de 3.7 à 3.15, et Je cours dans l'erreur de lien suivante:Erreur de liaison Mach-O Apple lors de la construction de cocos2d-x 3.15: "_iconv_open", référencé par: cocos2d :: FontAtlas :: conversionU32TOGB2312()

Undefined symbols for architecture arm64: 
    "_iconv_open", referenced from: 
     cocos2d::FontAtlas::conversionU32TOGB2312(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> > const&, std::__1::unordered_map<unsigned int, unsigned int, std::__1::hash<unsigned int>, std::__1::equal_to<unsigned int>, std::__1::allocator<std::__1::pair<unsigned int const, unsigned int> > >&) in libcocos2d iOS.a(CCFontAtlas.o) 
    "_iconv", referenced from: 
     cocos2d::FontAtlas::conversionU32TOGB2312(std::__1::basic_string<char32_t, std::__1::char_traits<char32_t>, std::__1::allocator<char32_t> > const&, std::__1::unordered_map<unsigned int, unsigned int, std::__1::hash<unsigned int>, std::__1::equal_to<unsigned int>, std::__1::allocator<std::__1::pair<unsigned int const, unsigned int> > >&) in libcocos2d iOS.a(CCFontAtlas.o) 
    "_CTFramesetterCreateWithAttributedString", referenced from: 
     _calculateShrinkedSizeForString(NSAttributedString**, objc_object*, CGSize, bool, int&) in libcocos2d iOS.a(CCDevice-ios.o) 
    "_iconv_close", referenced from: 
     cocos2d::FontAtlas::~FontAtlas() in libcocos2d iOS.a(CCFontAtlas.o) 
    "_CTFramesetterSuggestFrameSizeWithConstraints", referenced from: 
     _calculateShrinkedSizeForString(NSAttributedString**, objc_object*, CGSize, bool, int&) in libcocos2d iOS.a(CCDevice-ios.o) 
ld: symbol(s) not found for architecture arm64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Des pensées sur ce que je devrais faire pour résoudre ceci?

Construire avec Xcode 9.0

Merci!

Répondre

0

Mise à jour: Grâce à une exploration plus loin, je trouvais que je devais ajouter deux nouveaux cadres à mon projet:

Navigation projet-> Construire Phases-> Lien binaire avec les bibliothèques, et en ajoutant:

libiconv.tbd 
CoreText.framework 

résolu mes erreurs de l'éditeur de liens.

En laissant ceci ici au cas où quelqu'un d'autre rencontrerait des problèmes similaires mettant à jour à partir d'une ancienne version de cocos2d-x.