I'm having trouble creating the android compiler on my win32 system. I've followed the steps shown on the
http://wiki.freepascal.org/Android Wiki page but cannot get past the "building cross compiler" stage.
The steps I have taken are
1: I've downloaded and installed lazarus 1.0.6 (FCP 2.6.0) from sourceforge and tested it on a small project OK. I need this to build the final compiler.
2: I've gotton the latest svn trunk #23926 and save it to C:\Develop\FPC
3: I've installed android-ndk-r8d-windows => program files\android-ndk-r8d
4: installed android SDK installer_rr21-windows. this automatically installs into Program files\android\android-sdk
5:I've added to my PATH "c:\program files\android-ndk-r8d\toolchains\arm-linux-androideabi-4.7\prebuilt\windows\bin;"
this is followed by "C:\lazarus\fpc\2.6.0\bin\i386-win32;" each path was tested by going into C:/test and then running a program that lives in each of these locations.
At this point, I assume the Wiki is wrong, I do not have a "C:\Develop\FPC\FPC" folder. under the C:\Develop\FPC folder, I have the repo's file structure which starts which compiler, ide, installer.... folders and makefiles
When I try the
"make clean crossall crossinstall OS_TARGET=android CPU_TARGET=arm INSTALL_PREFIX=C:\Develop\FPC\pp" command, at the C:/Develop/FPC level, the make runs for a few minutes and ends up with these last few lines..
....
make[5]: Entering directory `C:/Develop/FPC/compiler/utils'
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f units/i386-win32/ppu.ppu units/i386-win32/crc.ppu units/i386-win32/usubst.ppu
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -rf units
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f *.o *.ppu *.rst *.s *.a *.dll *.ppl
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -rf *.sl
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f fpcmade.* Package.fpc ppas.bat script.res link.res
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f *_ppas.bat
make[5]: Leaving directory `C:/Develop/FPC/compiler/utils'
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -rf arm/units
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f arm/*.o arm/*.ppu arm/*.rst arm/*.s arm/*.a arm/*.dll arm/*.ppl
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f arm/ppc386.exe arm/ppc68k.exe arm/ppcx64.exe arm/ppcppc.exe arm/ppcsparc.exe arm/ppcppc64.exe arm/ppcarm.exe arm/ppcmips.exe arm/ppcmipsel.exe arm/ppcjvm.exe arm/ppcrossarm.exe
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f ppcrossarm.exe
C:/lazarus/fpc/2.6.0/bin/i386-win32/gmkdir.exe -p arm/units/i386-win32
C:/Develop/FPC/compiler/ppc.exe -Ur -Xs -O2 -n -Fuarm -Fusystems -FuC:/Develop/FPC/rtl/units/i386-win32 -Fiarm -FE. -FUarm/units/i386-win32 -dRELEASE -darm -dGDB -dBROWSERLOG -Sew pp.pas
widestr.pas(71,7) Fatal: Can't find unit cpall used by widestr
Fatal: Compilation aborted
make[4]: *** [ppcrossarm.exe] Error 1
make[4]: Leaving directory `C:/Develop/FPC/compiler'
make[3]: *** [cycle] Error 2
make[3]: Leaving directory `C:/Develop/FPC/compiler'
make[2]: *** [compiler_cycle] Error 2
make[2]: Leaving directory `C:/Develop/FPC'
make[1]: *** [build-stamp.arm-android] Error 2
make[1]: Leaving directory `C:/Develop/FPC'
make: *** [crossall] Error 2
I also tried these same steps with the svn android branch and came up with some different errors listed next
...
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f fpcmade.arm-android Package.fpc ppas.bat script.res link.res
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -f *.s *_ppas.sh
make[4]: Leaving directory `C:/Develop/FPC/rtl/android'
make[3]: Leaving directory `C:/Develop/FPC/rtl'
make[2]: Leaving directory `C:/Develop/FPC'
make packages_clean FPC=C:/Develop/FPC/compiler/ppcrossarm.exe
make[2]: Entering directory `C:/Develop/FPC'
make -C packages clean
make[3]: Entering directory `C:/Develop/FPC/packages'
make -C fpmkunit clean_bootstrap
make[4]: Entering directory `C:/Develop/FPC/packages/fpmkunit'
C:/lazarus/fpc/2.6.0/bin/i386-win32/rm.exe -rf units_bs
make[4]: Leaving directory `C:/Develop/FPC/packages/fpmkunit'
make[3]: Leaving directory `C:/Develop/FPC/packages'
make[2]: Leaving directory `C:/Develop/FPC'
make rtl_all FPC=C:/Develop/FPC/compiler/ppcrossarm.exe RELEASE=1
make[2]: Entering directory `C:/Develop/FPC'
make -C rtl all
make[3]: Entering directory `C:/Develop/FPC/rtl'
make -C android all
make[4]: Entering directory `C:/Develop/FPC/rtl/android'
C:/lazarus/fpc/2.6.0/bin/i386-win32/gmkdir.exe -p C:/Develop/FPC/rtl/units/arm-android
arm-android-as -o C:/Develop/FPC/rtl/units/arm-android/prt0.o arm/prt0.as
process_begin: CreateProcess((null), arm-android-as -o C:/Develop/FPC/rtl/units/arm-android/prt0.o arm/prt0.as, ...) failed.
make (e=2): The system cannot find the file specified.
make[4]: *** [prt0.o] Error 2
make[4]: Leaving directory `C:/Develop/FPC/rtl/android'
make[3]: *** [android_all] Error 2
make[3]: Leaving directory `C:/Develop/FPC/rtl'
make[2]: *** [rtl_all] Error 2
make[2]: Leaving directory `C:/Develop/FPC'
make[1]: *** [build-stamp.arm-android] Error 2
make[1]: Leaving directory `C:/Develop/FPC'
make: *** [crossall] Error 2
Any suggestions will be appreciated
Thanks MAS