Re: Errors compiling LuaJit for Android on Mac

  • From: Nika Kolomentseva <nika@xxxxxxxxxxxxxxx>
  • To: luajit@xxxxxxxxxxxxx
  • Date: Fri, 14 Sep 2012 13:14:36 -0700

Thanks for replying, Dimiter.

It actually now builds (with beta 10) with or without specifying
TARGET=arm. It builds a static lib and that's what I want so i'm not sure
about your suggestion of "TARGET_SONAME=.."

I do get a warning of "unknown EABI object attribute 44" that I don't know
if it's serious, I wont be able to verify the resulting lib for a while to
find out (to link the lib and try it running in a project) .


==== Building LuaJIT 2.0.0-beta10 ====
make -C src
AR        libluajit.a
LINK      luajit
/Users/nika/dev/android-ndk-r8b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/darwin-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/../../../../arm-linux-androideabi/bin/ld:
Warning:
/Users/nika/dev/android-ndk-r8b/platforms/android-8/arch-arm/usr/lib/crtend_android.o:
Unknown EABI object attribute 44
OK        Successfully built LuaJIT
==== Successfully built LuaJIT 2.0.0-beta10 ====




On Thu, Sep 13, 2012 at 6:36 PM, Dimiter 'malkia' Stanev
<malkia@xxxxxxxxx>wrote:

> On 9/13/2012 4:03 PM, Nika Kolomentseva wrote:
>
>>
>> Please advise about building android LuaJit on mac or tips on resolving
>> pseudo-op: `.private_extern' assembler errors in general.
>>
>> I am on Mac and following instruction to complie LuaJit2 in doc/install
>> or 
>> http://luajit.org/install.**html#android<http://luajit.org/install.html#android>:
>>
>> The only change I made is to change linux-x86 to darwin-x86 to get NDK
>> cross compiler. I also added TARGET_SYS=Linux (I tried with and without)
>> per installation notes: “Whenever the host OS and the target OS differ, you
>> need to specify TARGET_SYS or you'll get assembler or linker errors…”
>>
>> So my build script looks like this:
>>
>> NDK=$ANDROID_NDK
>>
>> NDKABI=8
>>
>> NDKVER=$NDK/toolchains/arm-**linux-androideabi-4.4.3
>>
>> NDKP=$NDKVER/prebuilt/darwin-**x86/bin/arm-linux-androideabi-
>>
>> NDKF="--sysroot $NDK/platforms/android-$**NDKABI/arch-arm"
>>
>> make HOST_CC="gcc -m32" CROSS=$NDKP TARGET_SYS=Linux TARGET_FLAGS="$NDKF""
>>
>> My $ANDROID_NDK points to r8b Android NDK. But I also tried r8 and r7,
>> and I tried gcc 4.6 with r8b. In all cases I get similar errors:
>>
>>
>> ==== Building LuaJIT 2.0.0-beta9 ====
>>
>> make -C src
>>
>> ASM lj_vm.o
>>
>> lj_vm.s: Assembler messages:
>>
>> lj_vm.s:5: Error: unknown pseudo-op: `.private_extern'
>>
>> lj_vm.s:8: Error: unknown pseudo-op: `.private_extern'
>>
>> lj_vm.s:25: Error: unknown pseudo-op: `.private_extern'
>>
>> …
>>
>>
>>
> Hi Nika,
>
> I think you are missing TARGET=arm and maybe also
> TARGET_SONAME=libluajit.so
>
> Thanks,
> Dimiter 'malkia' Stanev.
>
>
>

Other related posts: