无法运行示例rhodes应用程序

我安装了Android sdk版本和Andorid ndk。 使用Android SDK和AVD Manager,我安装了SDK Plaform Android 2.2,API8,rev3和1.6,API4,revsion3

当我尝试rake run:android我得到错误说

D:/Android_ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/../lib/gcc/arm-linux-android eabi/4.4.3/../../../../arm-linux-androideabi/bin/ld.exe: crtbegin_so.o: No such file: No such file or directory collect2: ld returned 1 exit status 

任何建议都会有所帮助

NDB的6b版本似乎有错误。 回到版本6(Mac版本在这里http://dl.google.com/android/ndk/android-ndk-r6-darwin-x86.tar.bz2,Windows和Linux将类似)。 解压缩它,把它放在某处然后运行rhodes-setup实用程序并告诉它新的NDK在哪里 – 你应该好好去。

问题出现在NDK r7c(linux)上。

我发现工具链忽略了平台位置($ NDK_ROOT / platforms / android-8 / arch-arm / usr / lib /)并在工具链路径中搜索它,这是不正确的。

但是,由于工具链还在当前目录中搜索文件,因此一种解决方案是将正确的平台crtbegin_so.o和crtend_so.o链接到源目录中:

cd src && ln -s NDK_ROOT/platforms/android-8/arch-arm/usr/lib/crtbegin_so.a

cd src && ln -s NDK_ROOT/platforms/android-8/arch-arm/usr/lib/crtend_so.a

注1:这个答案并不特定于罗兹

注2:这假设代码是为API8(Android 2.2)编译的。 请根据您的要求更改正确平台的路径。

注3:配置使用的标志:

 ./configure \ --host=arm-linux-androideabi \ CC=arm-linux-androideabi-gcc \ CPPFLAGS="-I$NDK_ROOT/platforms/android-8/arch-arm/usr/include/" \ CFLAGS="-nostdlib" \ LDFLAGS="-Wl,-rpath-link=$NDK_ROOT/platforms/android-8/arch-arm/usr/lib/ -L$NDK_ROOT/platforms/android-8/arch-arm/usr/lib/" \ LIBS="-lc" 

不确定我是否指向正确的方向,但看起来你的Rhodes应用程序正在寻找像SDK和AVD这样的文件而无法找到它们。

首先,确保项目中的build.yml指向Rhodes文件夹。 默认情况下,sample-api没有正确设置。

此外,在Rhodes文件夹中,确保rhobuild.yml具有SDK和AVD的正确位置。 该文件夹中还有一个示例,向您展示它应该是什么样子。

如果这没有帮助,我会建议您显示更多导致此错误的跟踪。 欢迎提供更多信息,因为您提供的信息并不多。