Hi Ludo.

I try to use you androidprt0.so but I keep getting the same error.

I do not have much experience in the lower parts of how the linking/assembling is done,
so I hope you can help me out here.

I get the following error:

$ ppcrossarm -b -B -XX -Xc -XD -Tlinux -darm -k"-landroidprt0" pascaljni.lpr
Free Pascal Compiler version 2.4.4 [2011/11/18] for arm
Copyright (c) 1993-2010 by Florian Klaempfl
Target OS: Linux for ARMEL
Compiling pascaljni.lpr
Assembling pascaljni
Linking libpascaljni.so
/usr/local/bin/arm-linux-ld: warning: link.res contains output sections; did you forget -T?
/usr/lib/fpc/2.4.4/units/arm-linux/rtl/dllprt0.o: In function `_haltproc':
androidprt0.as:(.text+0x0): multiple definition of `_haltproc'
./libandroidprt0.so:androidprt0.as:(.text+0x0): first defined here
/usr/lib/fpc/2.4.4/units/arm-linux/rtl/dllprt0.o: In function `_haltproc_eabi':
androidprt0.as:(.text+0x8): multiple definition of `_haltproc_eabi'
./libandroidprt0.so:androidprt0.as:(.text+0x8): first defined here
/usr/lib/fpc/2.4.4/units/arm-linux/rtl/dllprt0.o:(.data+0x0): multiple definition of `operatingsystem_parameter_envp'
./libandroidprt0.so:(.data+0x0): first defined here
/usr/lib/fpc/2.4.4/units/arm-linux/rtl/dllprt0.o:(.data+0x4): multiple definition of `operatingsystem_parameter_argc'
./libandroidprt0.so:(.data+0x4): first defined here
/usr/lib/fpc/2.4.4/units/arm-linux/rtl/dllprt0.o:(.data+0x8): multiple definition of `operatingsystem_parameter_argv'
./libandroidprt0.so:(.data+0x8): first defined here
pascaljni.lpr(19) Error: Error while linking
pascaljni.lpr(19) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted

As you can se i'm using FPC 2.4.4 (releases2_4_4 of the subversion repository) and there is clearly a conflict between
two competing unit. But how do I resolve this?

Regards,
Torsten Bonde Christiansen.

On 2011-08-11 11:54, Ludo Brands wrote:
My main doubt here is if androidprt0.as is really required,
which would mean that I can only produce android libraries if
I make changes to the compiler.


In NativeTest\jni is a makeandroid.bat that assembles androidprt0 and calls
ppcrossarm with -k"-landroidprt0". No need to change the compiler for that,
unless there are conflicts with existing arm initialisation.




Ludo

_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to