Cocos2d:无法启动Hellocpp

时间:2014-11-10 21:28:29

标签: android c++ android-ndk cocos2d-x unsatisfiedlinkerror

我看过很多有类似问题的帖子(见下文),但似乎没有什么能帮到我。

我的cocos2d-x“HelloCpp”测试应用程序(V 2.2.5)没有运行;在我创建一个表面之前,它在开始之后就崩溃了,据我所见。

我尝试在How to set up the Android Cocos2d-x development environment on Windows 7中设置Cocos2d-x测试项目“HelloCpp” - 一个小区别是我在Win8.1 64bit,Eclipse Juno上运行。我终于可以毫无错误地构建所有内容。

在设置NDK位置的一些初始问题之后,我也运行了build_native.sh。它似乎现在正确运行。

据我所知,Logcat输出的关键部分是:

  

11-10 16:08:37.221:E / AndroidRuntime(2024):   java.lang.UnsatisfiedLinkError:无法从加载器加载hellocpp   dalvik.system.PathClassLoader [DexPathList [[zip文件   “/data/app/org.cocos2dx.hellocpp-2.apk"],nativeLibraryDirectories=[/data/app-lib/org.cocos2dx.hellocpp-2,   / system / lib]]]:findLibrary返回null

我理解的是,获得c ++库似乎存在问题。

然而,与其他一些帖子不同,我在lib / armeabi中有hellocpp.so。

与此处(Cocos2D-x sample application crashes on launch)不同,我构建了libcocos2dx项目,bin / res目录中有libcocos2dx.jar。

此外,在构建项目时,我没有看到任何有用的输出,输出为:

  

19:08:36 ****增量构建配置项目的默认值   HelloCpp **** bash   C:/Users/Philipp/work/fat_fishin_2/cocos2d-x-2.2.5/samples/Cpp/HelloCpp/proj.android/build_native.sh   NDK_ROOT = / cygdrive / c / devenv / android / android-ndk COCOS2DX_ROOT =   /cygdrive/c/Users/Philipp/work/fat_fishin_2/cocos2d-x-2.2.5/samples/Cpp/HelloCpp/proj.android/../../../ ..   APP_ROOT =   /cygdrive/c/Users/Philipp/work/fat_fishin_2/cocos2d-x-2.2.5/samples/Cpp/HelloCpp/proj.android/ ..   APP_ANDROID_ROOT =   /cygdrive/c/Users/Philipp/work/fat_fishin_2/cocos2d-x-2.2.5/samples/Cpp/HelloCpp/proj.android   使用预建的外部   + / cygdrive / c / devenv / android / android-ndk / ndk-build -C /cygdrive/c/Users/Philipp/work/fat_fishin_2/cocos2d-x-2.2.5/samples/Cpp/HelloCpp/proj.android   NDK_MODULE_PATH = / cygdrive / C /用户/菲利普/工作/ fat_fishin_2 / cocos2d的-X-2.2.5 /样品/ CPP / HelloCpp / proj.android /../../../..:/ cygdrive / C /用户/菲利普/工作/ fat_fishin_2 / cocos2dx-2.2.5 /样品/ CPP / HelloCpp / proj.android /../../../../ cocos2dx /平台/ THIRD_PARTY /安卓/预建   make:输入目录   '/cygdrive/c/Users/Philipp/work/fat_fishin_2/cocos2d-x-2.2.5/samples/Cpp/HelloCpp/proj.android'   Android NDK:   警告:/cygdrive/c/Users/Philipp/work/fat_fishin_2/cocos2d-x-2.2.5/samples/Cpp/HelloCpp/proj.android /../../../../ cocos2dx / Android.mk :cocos2dx_static:   静态库[armeabi]始终忽略LOCAL_LDLIBS   安装:libhellocpp.so => libs / armeabi / libhellocpp.so make:   离开目录   '/cygdrive/c/Users/Philipp/work/fat_fishin_2/cocos2d-x-2.2.5/samples/Cpp/HelloCpp/proj.android'

     

19:08:38建成(耗时1s.443ms)

当我在cygwin终端中运行build_native.sh时,也没有错误。

我尝试了不同的NDK - 10c和9d。结果是一样的。

由于缺乏严谨的编程技巧,我遇到了一些错误,但我能够在所有帖子中找到帮助。然而,这对我来说没有意义,因为构建似乎没有抛出错误,但是无法读取cpp库。

请帮忙。

谢谢!

1 个答案:

答案 0 :(得分:0)

另外得到帮助:lib必须在x86架构中构建,并且必须位于/ libs / x86而不是/ libs / armeabi。

有关此处的更多信息:http://nigam.biz/cocos2dx/md___users_nigamshah__library__developer_cocos2d-x-2_81_84_tools_android-emulator-_r_e_a_d_m_e.html

谢谢!