Android Can';t运行示例rhodes应用程序

Android Can';t运行示例rhodes应用程序,android,ruby,rhodes,Android,Ruby,Rhodes,我安装了Android sdk版本和Android ndk。 使用Android SDK和AVD管理器,我安装了SDK平台Android 2.2、API8、rev3和1.6、API4、Revision3 当我尝试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/../../

我安装了Android sdk版本和Android ndk。 使用Android SDK和AVD管理器,我安装了SDK平台Android 2.2、API8、rev3和1.6、API4、Revision3

当我尝试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 

任何建议都会有帮助

我不确定我是否为您指明了正确的方向,但您的Rhodes应用程序似乎正在查找SDK和AVD之类的文件,但却找不到它们

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

另外,在Rhodes文件夹中,确保rhobuild.yml具有SDK和AVD的正确位置。该文件夹中还有一个示例,向您展示了它的外观


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

NDK的6b版本似乎有错误。退回到版本6(Mac版本在这里,Windows和Linux将类似)。
将其解压缩,放在某个地方,然后运行rhodes安装实用程序并告诉它新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"