[fpc-pascal] CThreads problem when cross-compiling to ARM/RPi.
Bruce Tulloch
pascal at causal.com
Fri May 24 13:37:08 CEST 2013
So this problem is not related to cthreads per se.
I've changed the program to:
program test;
uses
Interfaces;
begin
writeln('DATE ',{$i %DATE%});
writeln('FPCTARGET ',{$i %FPCTARGET%});
writeln('FPCTARGETCPU ',{$i %FPCTARGETCPU%});
writeln('FPCTARGETOS ',{$i %FPCTARGETOS%});
writeln('FPCVERSION ',{$i %FPCVERSION%});
end.
and built it as:
fpc -Tlinux -Parm \
-Fu/home/bruce/lazarus/lcl/units/arm-linux/gtk2 \
-Fu/home/bruce/lazarus/lcl/units/arm-linux \
-Fu/home/bruce/lazarus/components/lazutils/lib/arm-linux \
-s test.pas
where relevant part of /etc/fpc.cfg is:
-Sgic
-viwn
-Xs
-Fu/usr/local/lib/fpc/$fpcversion/units/$fpctarget/*
#IFDEF FPC_CROSSCOMPILING
-XP$FPCTARGET-
#IFDEF LINUX
#IFDEF CPUARMHF
-Xd
-k--sysroot=/usr/local/opt/chroot/raspbian/rootfs
-Fl/usr/local/opt/chroot/raspbian/rootfs/usr/lib/gcc/arm-linux-gnueabihf/4.6
-Fl/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf
-Fl/usr/local/opt/chroot/raspbian/rootfs/usr/lib
-Fl/usr/local/opt/chroot/raspbian/rootfs/lib/arm-linux-gnueabihf
-Fl/usr/local/opt/chroot/raspbian/rootfs/lib
-FD/usr/local/opt/binutils/bin
#ENDIF
#ENDIF
#ENDIF
this produces ppas.sh:
#!/bin/sh
DoExitAsm ()
{ echo "An error occurred while assembling $1"; exit 1; }
DoExitLink ()
{ echo "An error occurred while linking $1"; exit 1; }
echo Assembling test
/usr/local/opt/binutils/bin/arm-linux-as -mfloat-abi=hard -meabi=5
-march=armv7-a -mfpu=vfpv3-d16 -o test.o test.s
if [ $? != 0 ]; then DoExitAsm test; fi
rm test.s
echo Linking test
OFS=$IFS
IFS="
"
/usr/local/opt/binutils/bin/arm-linux-ld
--sysroot=/usr/local/opt/chroot/raspbian/rootfs
--dynamic-linker=/lib/ld-linux-armhf.so.3 -s -L. -o test link.res
if [ $? != 0 ]; then DoExitLink test; fi
IFS=$OFS
This assembles but the link fails on missing library dependencies.
The original (unmodified) INPUT statement in link.res is:
INPUT(
-ldl
-lpthread
-lX11
-lgdk_pixbuf-2.0
-lgtk-x11-2.0
-lgdk-x11-2.0
-lgobject-2.0
-lglib-2.0
-lgthread-2.0
-lgmodule-2.0
-lpango-1.0
-lcairo
-latk-1.0
)
To which I have to manually add these libraries:
-lrt
-lgcc_s
-lpcre
to fix these dependency problems, but the link then produces:
$ ./ppas.sh
Assembling test
Linking test
/usr/local/opt/binutils/bin/arm-linux-ld: warning: link.res contains
output sections; did you forget -T?
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/dynlibs.o: In function
`DYNLIBS_$$_LOADLIBRARY$ANSISTRING$$LONGINT':
dynlibs.pas:(.text.n_dynlibs_$$_loadlibrary$ansistring$$longint+0x1c):
warning: Using 'dlopen' in statically linked applications requires at
runtime the shared libraries from the glibc version used for linking
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf//libdl.a(dlopen.o):
In function `dlopen':
(.text+0xc): undefined reference to `__dlopen'
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf//libdl.a(dlclose.o):
In function `dlclose':
(.text+0x0): undefined reference to `__dlclose'
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf//libdl.a(dlsym.o):
In function `dlsym':
(.text+0xc): undefined reference to `__dlsym'
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf//libdl.a(dlerror.o):
In function `dlerror':
(.text+0x0): undefined reference to `__dlerror'
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf//libdl.a(dladdr.o):
In function `dladdr':
(.text+0x0): undefined reference to `__dladdr'
An error occurred while linking test
I cannot see any reason why arm-linux-ld is trying to link this statically
on the basis of the arguments used in ppas.sh and the contents of the
link.res based on the output of gcc in my previous email.
I've tried comparing the linker arguments used with those produced by
gcc and there some differences at assembly time. Is this important?
Prima facie is looks like it might be.
For example gcc on the target says:
-march=armv6
but FPC directs the assembler to use:
-march=armv7-a
FYI, below is the full content of the (amended) link.res file...
SEARCH_DIR("/usr/local/opt/chroot/raspbian/rootfs/lib/")
SEARCH_DIR("/usr/local/opt/chroot/raspbian/rootfs/lib/arm-linux-gnueabihf/")
SEARCH_DIR("/usr/local/opt/chroot/raspbian/rootfs/usr/lib/")
SEARCH_DIR("/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf/")
SEARCH_DIR("/usr/local/opt/chroot/raspbian/rootfs/usr/lib/gcc/arm-linux-gnueabihf/4.6/")
SEARCH_DIR("/home/bruce/lazarus/lcl/units/arm-linux/gtk2/")
SEARCH_DIR("/home/bruce/lazarus/lcl/units/arm-linux/")
SEARCH_DIR("/home/bruce/lazarus/components/lazutils/lib/arm-linux/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/httpd22/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/cdrom/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/jni/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/imagemagick/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-fpcunit/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/tcl/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-web/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/ldap/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/iconvenc/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/modplug/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/syslog/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/imlib/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fv/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/ggi/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/lua/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/opengl/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/pthreads/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-async/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-registry/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fftw/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/dbus/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-res/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-js/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/mysql/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/utmp/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/svgalib/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-base/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/libgd/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fastcgi/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/symbolic/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/postgres/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/ibase/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/mad/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-xml/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/uuid/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/chm/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/ncurses/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/oggvorbis/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fpgtk/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-db/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/bzip2/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/opengles/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/numlib/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-process/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/cairo/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/bfd/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/x11/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk1/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-net/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/dts/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/dblib/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/gdbint/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/proj4/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/libsee/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/libxml2/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/oracle/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-json/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/httpd24/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/openal/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/zlib/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/sqlite/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fpindexer/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/libtar/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/pcap/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/rsvg/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fppkg/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fpmkunit/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/ptc/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/unzip/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-passrc/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-extra/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-stl/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/xforms/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/sdl/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/hermes/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/openssl/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/odbc/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/pxlib/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/regexpr/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/users/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/aspell/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/zorba/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/gmp/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/newt/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/gnome1/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/hash/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-sdo/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/libcurl/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/libvlc/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/libpng/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/units/arm-linux/gdbm/")
SEARCH_DIR("/usr/local/lib/fpc/2.7.1/")
INPUT(
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/cprt0.o
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf/crti.o
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/gcc/arm-linux-gnueabihf/4.6/crtbegin.o
test.o
test.or
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/system.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/fpintres.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/interfaces.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/objpas.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/cwstring.o
/home/bruce/lazarus/lcl/units/arm-linux/interfacebase.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/baseunix.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/ctypes.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/unix.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/unixtype.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/initc.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/dynlibs.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/unixcp.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/unixutil.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/dl.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/types.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/classes.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/sysutils.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/math.o
/home/bruce/lazarus/lcl/units/arm-linux/lclstrconsts.o
/home/bruce/lazarus/lcl/units/arm-linux/lcltype.o
/home/bruce/lazarus/lcl/units/arm-linux/lclproc.o
/home/bruce/lazarus/lcl/units/arm-linux/lmessages.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpimage.o
/home/bruce/lazarus/lcl/units/arm-linux/graphtype.o
/home/bruce/lazarus/lcl/units/arm-linux/graphmath.o
/home/bruce/lazarus/lcl/units/arm-linux/intfgraphics.o
/home/bruce/lazarus/lcl/units/arm-linux/themes.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/typinfo.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/rtlconsts.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/errors.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/sysconst.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazlogger.o
/home/bruce/lazarus/lcl/units/arm-linux/fpcadds.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/avglvltree.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/fileutil.o
/home/bruce/lazarus/lcl/units/arm-linux/wsreferences.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazmethodlist.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazutf8.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazloggerbase.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazclasses.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/masks.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazutilsstrconsts.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazfileutils.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-base/contnrs.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/strutils.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-base/gettext.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazutf8classes.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpreadbmp.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpwritebmp.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/bmpcomn.o
/home/bruce/lazarus/lcl/units/arm-linux/lclversion.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpreadpng.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpwritepng.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpreadtiff.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpwritetiff.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fptiffcmn.o
/home/bruce/lazarus/lcl/units/arm-linux/icnstypes.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpimgcmn.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/pngcomn.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/zstream.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/zbase.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/gzio.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/hash/crc.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/zdeflate.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/zinflate.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/trees.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/adler.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/infblock.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/infutil.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/infcodes.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/inftrees.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/paszlib/inffast.o
/home/bruce/lazarus/lcl/units/arm-linux/graphics.o
/home/bruce/lazarus/lcl/units/arm-linux/lclintf.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpcanvas.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpreadpnm.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpwritepnm.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpreadjpeg.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpwritejpeg.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/fpreadgif.o
/home/bruce/lazarus/lcl/units/arm-linux/lresources.o
/home/bruce/lazarus/lcl/units/arm-linux/lclrescache.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-image/clipping.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jpeglib.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdapimin.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdatasrc.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdapistd.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jmorecfg.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdeferr.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jinclude.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jerror.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jmemmgr.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdmarker.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdinput.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcomapi.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jutils.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jmemnobs.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdmaster.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdcolor.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdsample.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdpostct.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jddctmgr.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdphuff.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdhuff.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdcoefct.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdmainct.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jquant1.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jquant2.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdmerge.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdct.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jidctfst.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jidctint.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jidctflt.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jidctred.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcapistd.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcapimin.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jdatadst.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcparam.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcinit.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcmarker.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcphuff.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jchuff.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcmaster.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jccolor.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcsample.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcprepct.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcdctmgr.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jccoefct.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jcmainct.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jfdctint.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jfdctfst.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/pasjpeg/jfdctflt.o
/home/bruce/lazarus/lcl/units/arm-linux/dynqueue.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazconfigstorage.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-base/syncobjs.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/utf8process.o
/home/bruce/lazarus/lcl/units/arm-linux/maps.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazutf8sysutils.o
/home/bruce/lazarus/lcl/units/arm-linux/tmschema.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-process/process.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-process/pipes.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/rtl/termio.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2disableliboverlay.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2int.o
/home/bruce/lazarus/lcl/units/arm-linux/forms.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/x11/xlib.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/x11/x.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/gdk2x.o
/home/bruce/lazarus/lcl/units/arm-linux/dialogs.o
/home/bruce/lazarus/lcl/units/arm-linux/controls.o
/home/bruce/lazarus/lcl/units/arm-linux/dynhasharray.o
/home/bruce/lazarus/lcl/units/arm-linux/menus.o
/home/bruce/lazarus/lcl/units/arm-linux/wslclclasses.o
/home/bruce/lazarus/lcl/units/arm-linux/buttons.o
/home/bruce/lazarus/lcl/units/arm-linux/stdctrls.o
/home/bruce/lazarus/lcl/units/arm-linux/checklst.o
/home/bruce/lazarus/lcl/units/arm-linux/comctrls.o
/home/bruce/lazarus/lcl/units/arm-linux/spin.o
/home/bruce/lazarus/lcl/units/arm-linux/extctrls.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/gdk2pixbuf.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/gtk2.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/gdk2.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/glib2.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/pango.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2winapiwindow.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2globals.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2proc.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2def.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2fontcache.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2extra.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2msgqueue.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/x11/xrender.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/cairo/cairo.o
/home/bruce/lazarus/lcl/units/arm-linux/buttonpanel.o
/home/bruce/lazarus/lcl/units/arm-linux/lclclasses.o
/home/bruce/lazarus/lcl/units/arm-linux/customtimer.o
/home/bruce/lazarus/lcl/units/arm-linux/actnlist.o
/home/bruce/lazarus/lcl/units/arm-linux/clipbrd.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-base/custapp.o
/home/bruce/lazarus/lcl/units/arm-linux/helpintfs.o
/home/bruce/lazarus/lcl/units/arm-linux/imglist.o
/home/bruce/lazarus/lcl/units/arm-linux/wsimglist.o
/home/bruce/lazarus/lcl/units/arm-linux/wsproc.o
/home/bruce/lazarus/lcl/units/arm-linux/wsfactory.o
/home/bruce/lazarus/lcl/units/arm-linux/propertystorage.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-base/rttiutils.o
/home/bruce/lazarus/lcl/units/arm-linux/wsmenus.o
/home/bruce/lazarus/lcl/units/arm-linux/wscontrols.o
/home/bruce/lazarus/lcl/units/arm-linux/wsforms.o
/home/bruce/lazarus/lcl/units/arm-linux/imagelistcache.o
/home/bruce/lazarus/lcl/units/arm-linux/extendedstrings.o
/home/bruce/lazarus/lcl/units/arm-linux/textstrings.o
/home/bruce/lazarus/lcl/units/arm-linux/wsstdctrls.o
/home/bruce/lazarus/lcl/units/arm-linux/wsbuttons.o
/home/bruce/lazarus/lcl/units/arm-linux/popupnotifier.o
/home/bruce/lazarus/lcl/units/arm-linux/wsextctrls.o
/home/bruce/lazarus/lcl/units/arm-linux/wsdialogs.o
/home/bruce/lazarus/lcl/units/arm-linux/wschecklst.o
/home/bruce/lazarus/lcl/units/arm-linux/toolwin.o
/home/bruce/lazarus/lcl/units/arm-linux/wscomctrls.o
/home/bruce/lazarus/lcl/units/arm-linux/wstoolwin.o
/home/bruce/lazarus/lcl/units/arm-linux/wsspin.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/atk.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/gtk2/gtk2ext.o
/home/bruce/lazarus/lcl/units/arm-linux/extdlgs.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2debug.o
/home/bruce/lazarus/lcl/units/arm-linux/lclmessageglue.o
/home/bruce/lazarus/lcl/units/arm-linux/calendar.o
/home/bruce/lazarus/lcl/units/arm-linux/wscalendar.o
/home/bruce/lazarus/lcl/units/arm-linux/wsextdlgs.o
/home/bruce/lazarus/lcl/units/arm-linux/lclmemmanager.o
/home/bruce/lazarus/lcl/units/arm-linux/messages.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsprivate.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-base/uriparser.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wscontrols.o
/home/bruce/lazarus/lcl/units/arm-linux/lazlinkedlist.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsfactory.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsstdctrls.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wschecklst.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2themes.o
/home/bruce/lazarus/lcl/units/arm-linux/grids.o
/home/bruce/lazarus/lcl/units/arm-linux/pairsplitter.o
/home/bruce/lazarus/lcl/units/arm-linux/dynamicarray.o
/home/bruce/lazarus/lcl/units/arm-linux/maskedit.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/laz2_xmlcfg.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazfilecache.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/laz2_dom.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/laz2_xmlread.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/laz2_xmlwrite.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/lazdbglog.o
/usr/local/lib/fpc/2.7.1/units/arm-linux/fcl-base/avl_tree.o
/home/bruce/lazarus/components/lazutils/lib/arm-linux/laz2_xmlutils.o
/home/bruce/lazarus/lcl/units/arm-linux/wsgrids.o
/home/bruce/lazarus/lcl/units/arm-linux/wspairsplitter.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsbuttons.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wscalendar.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wscomctrls.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsdialogs.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsextctrls.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsextdlgs.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsforms.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsgrids.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsimglist.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsmenus.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wsspin.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2wspairsplitter.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2cellrenderer.o
/home/bruce/lazarus/lcl/units/arm-linux/gtk2/gtk2listviewtreemodel.o
)
INPUT(
-ldl
-lpthread
-lX11
-lgdk_pixbuf-2.0
-lgtk-x11-2.0
-lgdk-x11-2.0
-lgobject-2.0
-lglib-2.0
-lgthread-2.0
-lgmodule-2.0
-lpango-1.0
-lcairo
-latk-1.0
-lrt
-lgcc_s
-lpcre
)
GROUP(
-lc
)
INPUT(
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/gcc/arm-linux-gnueabihf/4.6/crtend.o
/usr/local/opt/chroot/raspbian/rootfs/usr/lib/arm-linux-gnueabihf/crtn.o
)
ENTRY(_start)
SECTIONS
{
PROVIDE (__executable_start = 0x010000); . = 0x010000 + SIZEOF_HEADERS;
.interp : { *(.interp) }
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
.gnu.version : { *(.gnu.version) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version_r : { *(.gnu.version_r) }
.rel.dyn :
{
*(.rel.init)
*(.rel.text .rel.text.* .rel.gnu.linkonce.t.*)
*(.rel.fini)
*(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*)
*(.rel.data.rel.ro*)
*(.rel.data .rel.data.* .rel.gnu.linkonce.d.*)
*(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*)
*(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*)
*(.rel.got)
*(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*)
}
.rela.dyn :
{
*(.rela.init)
*(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
*(.rela.fini)
*(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
*(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
*(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*)
*(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*)
*(.rela.got)
*(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
}
.rel.plt : { *(.rel.plt) }
.rela.plt : { *(.rela.plt) }
.init :
{
KEEP (*(.init))
} =0x90909090
.plt : { *(.plt) }
.text :
{
*(.text .stub .text.* .gnu.linkonce.t.*)
KEEP (*(.text.*personality*))
*(.gnu.warning)
} =0x90909090
.fini :
{
KEEP (*(.fini))
} =0x90909090
PROVIDE (_etext = .);
.rodata :
{
*(.rodata .rodata.* .gnu.linkonce.r.*)
}
. = ALIGN (0x1000) - ((0x1000 - .) & (0x1000 - 1));
.dynamic : { *(.dynamic) }
.got : { *(.got) }
.got.plt : { *(.got.plt) }
.data :
{
*(.data .data.* .gnu.linkonce.d.*)
KEEP (*(.fpc .fpc.n_version .fpc.n_links))
KEEP (*(.gnu.linkonce.d.*personality*))
}
PROVIDE (_edata = .);
PROVIDE (edata = .);
.threadvar : { *(.threadvar .threadvar.* .gnu.linkonce.tv.*) }
__bss_start = .;
.bss :
{
*(.dynbss)
*(.bss .bss.* .gnu.linkonce.b.*)
*(COMMON)
. = ALIGN(32 / 8);
}
. = ALIGN(32 / 8);
PROVIDE (_end = .);
PROVIDE (end = .);
.stab 0 : { *(.stab) }
.stabstr 0 : { *(.stabstr) }
}
More information about the fpc-pascal
mailing list