|
Post by tripodrob on Nov 26, 2017 22:27:41 GMT
Hi, I'm trying to update an app I built on an earlier version of rhodes, but can't get it to compile in any variation using Android Studio 3.0 and rhodes 6.0.11 gem. I've tried building on Win 10 and OS X (10.13) with ruby 1.9 and 2.3.1 and always run into a problem with missing headers files in the gem. Does 6.0.11 and the latest version of Java work together?
Thanks
|
|
|
Post by Alex Epifanov on Nov 27, 2017 12:16:21 GMT
Hello!
What exact error do you observe? 6.0.11 should work OK with latest Android SDK/NDK, Ruby 2.3 should work as well.
|
|
|
Post by tripodrob on Nov 27, 2017 19:41:08 GMT
Here are some of the errors before it tries to compile:
** Invoke config:arm In file included from /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/syslimits.h:7:0, from /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/limits.h:34, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/include/ruby/ruby.h:207, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/rubysocket.h:4, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/constants.c:11: /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/limits.h:168:61: error: no include path in which to search for limits.h #include_next <limits.h> /* recurse down to the real one */ ^ In file included from /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/syslimits.h:7:0, from /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/limits.h:34, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/include/ruby/ruby.h:207, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/rubysocket.h:4, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/init.c:11: /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/limits.h:168:61: error: no include path in which to search for limits.h #include_next <limits.h> /* recurse down to the real one */ ^ In file included from /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/syslimits.h:7:0, from /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/limits.h:34, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/include/ruby/ruby.h:207, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/rubysocket.h:4, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/ifaddr.c:1: /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/limits.h:168:61: error: no include path in which to search for limits.h #include_next <limits.h> /* recurse down to the real one */ ^ In file included from /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/syslimits.h:7:0, from /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/limits.h:34, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/include/ruby/ruby.h:207, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/rubysocket.h:4, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/ipsocket.c:11: /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include-fixed/limits.h:168:61: error: no include path in which to search for limits.h #include_next <limits.h> /* recurse down to the real one */
Here are some ofthe following compiler errors:
PWD: /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11 /Users/iath/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-gcc --sysroot /Users/iath/Library/Android/sdk/ndk-bundle/platforms/android-19/arch-arm -fPIC -Wall -Wextra -Wno-sign-compare -Wno-unused -Wno-unused-parameter -mandroid -DANDROID -DOS_ANDROID -DRHO_DEBUG -O0 -g -D_DEBUG -fstack-protector-all -Winit-self -Wshadow -Wcast-align -Wvla -Wstack-protector -DRUBY_EXPORT -Wno-uninitialized -Wno-missing-field-initializers -Wno-shadow -I"/Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/include" -I"/Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/android" -I"/Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/generated" -I"/Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby" -I"/Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/.." -I"/Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/../sqlite" -c "/Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/basicsocket.c" -o "/Users/iath/app/chaco_smartphone/bin/tmp/ruby/arm/basicsocket.c.o" In file included from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/include/ruby/ruby.h:24:0, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/rubysocket.h:4, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/basicsocket.c:11: /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/android/ruby/config.h:9:2: warning: #warning ">>>>> Building for ARM <<<<<" [-Wcpp] #warning ">>>>> Building for ARM <<<<<" ^ In file included from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/include/ruby/ruby.h:36:0, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/rubysocket.h:4, from /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../../platform/shared/ruby/ext/socket/basicsocket.c:11: /Users/iath/.rvm/gems/ruby-2.3.1/gems/rhodes-6.0.11/platform/android/../shared/ruby/include/ruby/defines.h:26:19: fatal error: stdio.h: No such file or directory #include <stdio.h> ^ compilation terminated.
|
|
|
Post by Alex Epifanov on Nov 28, 2017 16:34:13 GMT
Correction: NDKv16 has been published in November. Rhodes was not validated against it, and currently Rhodes _not_ working with NDK16. We are investigating possible issues. NDK 15 and below should work fine.
|
|