RAD with FPC/Lazarus: Difference between revisions
Jump to navigation
Jump to search
Michaelfung (talk | contribs) (Created page with '== Install FPC and Lazarus == Reference: http://wiki.lazarus.freepascal.org/Setup_Cross_Compile_For_ARM But the binutils part should be omitted and instead use the binutils bui…') |
Michaelfung (talk | contribs) |
||
Line 26: | Line 26: | ||
/usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-as -meabi=5 \$@ | /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-as -meabi=5 \$@ | ||
EOT | EOT | ||
chmod 755 as | chmod 755 as | ||
Line 34: | Line 33: | ||
#IFDEF CPUARM | #IFDEF CPUARM | ||
-XP/home/mike/lazarus/fpc/binutils/ | -XP/home/mike/lazarus/fpc/binutils/ | ||
== Get target library files == | == Get target library files == |
Revision as of 13:14, 11 November 2010
Install FPC and Lazarus
Reference: http://wiki.lazarus.freepascal.org/Setup_Cross_Compile_For_ARM
But the binutils part should be omitted and instead use the binutils built by OE.
Use OE built binutils
Bake the binutils-cross-sdk:
bitbake binutils-cross-sdk
Install the baked ipk, eg. binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk, on the host:
sudo dpkg --install --force-architecture binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk
Create links to the binutils programs:
cd ~/lazarus/fpc/binutils ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ld ld ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ar ar cat <<EOT > as #!/bin/sh /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-as -meabi=5 \$@ EOT chmod 755 as
Config fpc to use the binutils, edit ~/.fpc.cfg to include:
#IFDEF CPUARM -XP/home/mike/lazarus/fpc/binutils/
Get target library files
Copy the target library files from OE to the host:
cd /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi sudo mkdir -p {lib/gcc,usr/lib} sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/lib/* lib/ sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/usr/lib/* usr/lib/ sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/i686-linux/usr/armv6/lib/gcc/arm-angstrom-linux-gnueabi/4.3.3/* lib/gcc/
Config fpc to use the libraries, edit ~/.fpc.cfg to include:
#IFDEF CPUARM -Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib -Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/lib -Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib/gcc