[fpc-pascal] Error compiling android example: can't locate arm-linux-as
bsquared
bwcode4u at gmail.com
Wed Oct 31 20:46:39 CET 2012
Hello all,
Can anyone shed some light on this problem for me?
I am trying to configure FPC/Lazarus for Android Cross-Compiling. I
have followed the directions as indicated here:
http://wiki.lazarus.freepascal.org/Android_Interface
but I get this error on compiling the project.
8< ------------------------------------------------------------
/usr/share/lazarus/1.0.2/packager/registration/lazaruspackageintf.pas(110)
Error: Assembler arm-linux-as not found, switching to external assembling
-------------------------------------------------------------- >8
If I use ~/.fpc.cfg as indicated in instructions the error is slightly
different.
8< ------------------------------------------------------------
/usr/share/lazarus/1.0.2/packager/registration/lazaruspackageintf.pas(110)
Error: Assembler /opt/cross-binutils/bin/as not found, switching to
external assembling
-------------------------------------------------------------- >8
however the assembler and others cross-binutils are in my path.
I also tried changing the compiler path (/usr/bin/ppcarm) in Lazarus as
indicated in th instructions, but I got the same result.
I should note that I had originally configured binutils with
--prefix=/usr, but I got this error. There was no target for 'make
uninstall', so ran ./configure again with --prefix=/opt/cross/binutils,
so I could locate and remove the files from the original run--in case I
had made an error. I left /opt/cross-binutils as is and modified my path.
Here is a rundown of what I did to configure cross arm compiling:
8< ------------------------------------------------------------
download and extract binutils-2.23
./configure --target=arm-linux --disable-werror --prefix=/opt/cross-binutils
make
sudo make install
sudo mv arm-linux-as{,_orig}
sudo echo '/opt/cross-binutils/bin/arm-linux-as_orig -meabi=5 $@' >
/opt/cross-binutils/bin/arm-linux-as
sudo chmod +x /opt/cross-binutils/bin/arm-linux-as
sudo ln arm-linux-as as
sudo ln arm-linux-ar ar
sudo ln arm-linux-ld ld
sudo ln /usr/share/fpcsrc /opt/
sudo make crossinstall CPU_TARGET=arm OS_TARGET=linux
CROSSBINDIR=/opt/cross-binutils/bin OPT=-dFPC_ARMEL INSTALL_PREFIX=/usr
modify PATH in ~/.bashrc
PATH+=":/opt/cross-binutils/bin"
-------------------------------------------------------------- >8
These are the project options:
8< ------------------------------------------------------------
-MObjFPC
-Scghi
-WR
-O1
-Tlinux
-Parm
-Xs
-XX
-vewnhi
-l
-Filib/arm-linux
-Fl../../../src/android-ndk/platforms/android-8/arch-arm/usr/lib
-Fl../../../src/android-ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/lib/gcc/arm-linux-androideabi/4.4.3
-Fu/usr/share/lazarus/1.0.2/lcl/units/arm-linux/customdrawn
-Fu/usr/share/lazarus/1.0.2/lcl/units/arm-linux
-Fu/usr/share/lazarus/1.0.2/components/lazutils/lib/arm-linux
-Fu../../../.lazarus/lib/units/arm-linux
-Fu.
-FUlib/arm-linux/
-FEandroid/libs/armeabi/
-oliblclapp.so.so
-dLCL
-dLCLcustomdrawn
-dANDROID
-Xd
-CpARMV6
-------------------------------------------------------------- >8
The -Fu *arm-linux* lines appear to be generated, and those paths do not
exist.
Thank you.
--
Regards,
Brian
More information about the fpc-pascal
mailing list