2014-11-24

Cocos2d-x で dlopen failed: cannot locate symbol "rand"

EABI は正しいのに Cocos2d-x v3 のアプリが立ち上がらずに即座にクラッシュする場合、ログに dlopen failed: cannot locate symbol "rand" が出ていないかを確認してみてください。

これはどうやら NDK が Android 5.0 (Lollipop) 64bit でしか動かないバイナリを作ってしまっているのが原因のようで、Cocos2d-x で公式に推薦されている Android NDK r9d を使うと大丈夫でした。

リンク

Issue 168 - android-developer-preview - libc removed issetugid - A public project for reporting issues with Android Developer Preview releases - Google Project Hosting
NDK r9d url - Compiling and linking error when using NDK r10 to build cocos2d-x v3.2 | Cocos2d-x