On Sat, Jan 15, 2011 at 03:09, Hart's Antler <[email protected]> wrote: > > Hi all PyPy-devs, > I'm not sure if my error is simply a 64bit issue, and it would work from > 32bit linux. Can i simply -DMAX_LONG not to be 64bit and then using the > Android NDK gcc (which i think is 32bits) is ok?
I guess MAX_LONG is calculated internally. You probably need to use a different Python interpreter, a 32bit one, to build PyPy (instructions on the website). If none is available, you need to build one from scratch. Given that you're cross-compiling PyPy, I wonder whether Python on ARM (the one you'd use in a non-cross-platform build) is any different from Python on x86, and if this difference is important; surely it is different from Python on x86_64, as you noticed. > Or should i recompile Android's NDK gcc so that its 64bits? Maybe I missed something, but is that even possible? Your toolchain seems to target ARM, and according to common sense and Wikipedia [1] there are no 64bit ARM processors. It seems that Android supports other target architectures, even x86 it seems, still I doubt the existence of 64bit phones :-D. [1] http://en.wikipedia.org/wiki/ARM_architecture > Almost working example: > http://pastebin.com/bjwEh8E7 > Error: > /home/brett/android-ndk-r5/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc > -MMD -MP -MF > /tmp/usession-default-6/obj/local/armeabi/objs/testing_1/testing_1.o.d -fpic > -ffunction-sections -funwind-tables -fstack-protector -D__ARM_ARCH_5__ > -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -Wno-psabi > -march=armv5te -mtune=xscale -msoft-float -mthumb -Os -fomit-frame-pointer > -fno-strict-aliasing -finline-limit=64 -I/tmp/usession-default-6/jni > -DANDROID -I/home/brett/RPythonic/pypy/pypy/translator/c -DPYPY_STANDALONE > -Wa,--noexecstack -O2 -DNDEBUG -g > -I/home/brett/android-ndk-r5/platforms/android-3/arch-arm/usr/include -c > /tmp/usession-default-6/jni/testing_1.c -o > /tmp/usession-default-6/obj/local/armeabi/objs/testing_1/testing_1.o > In file included from > /home/brett/RPythonic/pypy/pypy/translator/c/src/g_prerequisite.h:7, > from /tmp/usession-default-6/jni/common_header.h:44, > from /tmp/usession-default-6/jni/testing_1.c:1: > /home/brett/RPythonic/pypy/pypy/translator/c/src/commondefs.h:58:6: error: > #error "error in LONG_MAX (64-bit sources but a 32-bit compiler?)" > /home/brett/RPythonic/pypy/pypy/translator/c/src/commondefs.h:61:6: error: > #error "unsupported value for LONG_MIN" > /tmp/usession-default-6/jni/testing_1.c:85: error: expected > specifier-qualifier-list before 'PyObject' > /tmp/usession-default-6/jni/testing_1.c:404: error: expected '=', ',', ';', > 'asm' or '__attribute__' before '*' token > /tmp/usession-default-6/jni/testing_1.c:409: error: expected ')' before '*' > token > In file included from > /home/brett/RPythonic/pypy/pypy/translator/c/src/g_include.h:58, > from /tmp/usession-default-6/jni/testing_1.c:564: > > -brett > > _______________________________________________ > [email protected] > http://codespeak.net/mailman/listinfo/pypy-dev -- Paolo Giarrusso - Ph.D. Student http://www.informatik.uni-marburg.de/~pgiarrusso/ _______________________________________________ [email protected] http://codespeak.net/mailman/listinfo/pypy-dev
