[fpc-devel] ncurses example on arm linux uclibc

Nataraj S Narayan natarajsn at gmail.com
Fri Oct 23 15:55:36 CEST 2009


Hi

While trying to compile 'firework.pp' under packages/ncurse, for
arm-linux-uclibcgnueabi-

Since my target SBC dont have libncursesw.so i did a symlink to
libncurses.so.5.6.

Target file system is uclibc based. ppcrossarm is compiled with
arm-linux-uclibcgnueabi-

I am  able to compile on host  & execute on target a simple Helloworld.pas.

Using :-
/software/fpc-uclibc/lib/fpc/2.5.1/ppcrossarm  -n -MObjFPC -TLinux
-Parmv5 -gl -Xd -Xs -l -darm  -XParm-linux-uclibcgnueabi- -CfSOFT
-CaEABI -darm -gl -O- -CpARMV5 examples/firework.pp -uUSE_LOCALIZE
firework.pp  -Fu/software/fpc-uclibc/lib/fpc/2.5.1/units/arm-linux/*
-Fl/usr/br-git-rf/usr/lib -FL/usr/br-git-rf/lib/ld-uClibc.so.0


I get the following errors when compiling :-

Free Pascal Compiler version 2.5.1 [2009/10/23] for arm
Copyright (c) 1993-2009 by Florian Klaempfl
/usr/bin/arm-linux-uclibcgnueabi-ld: warning: libc.so.0, needed by
/usr/br-git-rf/usr/lib//libncursesw.so, not found (try using -rpath or
-rpath-link)
/software/fpc-uclibc/lib/fpc/2.5.1/units/arm-linux/rtl/cprt0.o: In
function `_start':
(.text+0x4c): undefined reference to `__libc_start_main'
/usr/br-git-rf/usr/lib//libc.a(sigrestorer.os):(.ARM.exidx+0x0):
undefined reference to `__aeabi_unwind_cpp_pr1'
/usr/br-git-rf/usr/lib//libc.a(fread_unlocked.os): In function `fread_unlocked':
fread_unlocked.c:(.text+0x4c): undefined reference to `__aeabi_uidiv'
fread_unlocked.c:(.text+0x130): undefined reference to `__aeabi_uidiv'
/usr/br-git-rf/usr/lib//libc.a(fwrite_unlocked.os): In function
`fwrite_unlocked':
fwrite_unlocked.c:(.text+0x48): undefined reference to `__aeabi_uidiv'
fwrite_unlocked.c:(.text+0x68): undefined reference to `__aeabi_uidiv'
/usr/br-git-rf/usr/lib//libc.a(calloc.os): In function `calloc':
calloc.c:(.text+0x28): undefined reference to `__aeabi_uidiv'
/usr/br-git-rf/usr/lib//libc.a(free.os):(.text+0x2c): more undefined
references to `__aeabi_uidiv' follow
/usr/br-git-rf/usr/lib//libc.a(_stdlib_strto_l.os): In function
`_stdlib_strto_l':
_stdlib_strto_l.c:(.text+0xc8): undefined reference to `__aeabi_uidivmod'
_stdlib_strto_l.c:(.text+0xdc): undefined reference to `__aeabi_uidiv'
/usr/br-git-rf/usr/lib//libc.a(_uintmaxtostr.os): In function `_uintmaxtostr':
_uintmaxtostr.c:(.text+0x58): undefined reference to `__aeabi_uidiv'
_uintmaxtostr.c:(.text+0x68): undefined reference to `__aeabi_uidivmod'
_uintmaxtostr.c:(.text+0x98): undefined reference to `__aeabi_uidivmod'
_uintmaxtostr.c:(.text+0xa8): undefined reference to `__aeabi_uidiv'
_uintmaxtostr.c:(.text+0xb8): undefined reference to `__aeabi_uidivmod'
_uintmaxtostr.c:(.text+0xcc): undefined reference to `__aeabi_uidiv'
_uintmaxtostr.c:(.text+0xe0): undefined reference to `__aeabi_uidiv'
_uintmaxtostr.c:(.text+0xf0): undefined reference to `__aeabi_uidivmod'
_uintmaxtostr.c:(.text+0xfc): undefined reference to `__aeabi_uidivmod'
_uintmaxtostr.c:(.text+0x10c): undefined reference to `__aeabi_uidiv'
/usr/br-git-rf/usr/lib//libc.a(_fpmaxtostr.os): In function `_fpmaxtostr':
_fpmaxtostr.c:(.text+0xe4): undefined reference to `__aeabi_dcmpeq'
_fpmaxtostr.c:(.text+0x108): undefined reference to `__aeabi_dcmpeq'
_fpmaxtostr.c:(.text+0x124): undefined reference to `__aeabi_ddiv'
_fpmaxtostr.c:(.text+0x130): undefined reference to `__aeabi_dcmplt'
_fpmaxtostr.c:(.text+0x1c0): undefined reference to `__aeabi_dcmplt'
_fpmaxtostr.c:(.text+0x1e8): undefined reference to `__aeabi_dmul'
_fpmaxtostr.c:(.text+0x1fc): undefined reference to `__aeabi_dcmpeq'
_fpmaxtostr.c:(.text+0x320): undefined reference to `__aeabi_dcmplt'
_fpmaxtostr.c:(.text+0x350): undefined reference to `__aeabi_dmul'
_fpmaxtostr.c:(.text+0x364): undefined reference to `__aeabi_dcmplt'
_fpmaxtostr.c:(.text+0x384): undefined reference to `__aeabi_ddiv'
_fpmaxtostr.c:(.text+0x398): undefined reference to `__aeabi_dcmpge'
_fpmaxtostr.c:(.text+0x3d8): undefined reference to `__aeabi_dcmpge'
_fpmaxtostr.c:(.text+0x3f4): undefined reference to `__aeabi_ddiv'
_fpmaxtostr.c:(.text+0x414): undefined reference to `__aeabi_d2uiz'
_fpmaxtostr.c:(.text+0x41c): undefined reference to `__aeabi_ui2d'
_fpmaxtostr.c:(.text+0x430): undefined reference to `__aeabi_dsub'
_fpmaxtostr.c:(.text+0x43c): undefined reference to `__aeabi_dmul'
_fpmaxtostr.c:(.text+0x45c): undefined reference to `__aeabi_uidivmod'
_fpmaxtostr.c:(.text+0x478): undefined reference to `__aeabi_uidiv'
_fpmaxtostr.c:(.text+0x868): undefined reference to `__aeabi_idivmod'
_fpmaxtostr.c:(.text+0x87c): undefined reference to `__aeabi_idiv'
/usr/br-git-rf/usr/lib//libc.a(__psfs_do_numeric.os): In function
`__psfs_do_numeric':
__psfs_do_numeric.c:(.text+0x54c): undefined reference to `__aeabi_d2f'
/usr/br-git-rf/usr/lib//libc.a(__strtofpmax.os): In function `__strtofpmax':
__strtofpmax.c:(.text+0x134): undefined reference to `__aeabi_i2d'
__strtofpmax.c:(.text+0x150): undefined reference to `__aeabi_dmul'
__strtofpmax.c:(.text+0x15c): undefined reference to `__aeabi_dadd'
__strtofpmax.c:(.text+0x1f4): undefined reference to `__aeabi_i2d'
__strtofpmax.c:(.text+0x200): undefined reference to `__aeabi_ddiv'
__strtofpmax.c:(.text+0x36c): undefined reference to `__aeabi_dcmpeq'
__strtofpmax.c:(.text+0x3a4): undefined reference to `__aeabi_ddiv'
__strtofpmax.c:(.text+0x3ac): undefined reference to `__aeabi_dmul'
__strtofpmax.c:(.text+0x3c8): undefined reference to `__aeabi_dmul'
__strtofpmax.c:(.text+0x3f0): undefined reference to `__aeabi_dmul'
__strtofpmax.c:(.text+0x404): undefined reference to `__aeabi_dcmpeq'
/usr/br-git-rf/usr/lib//libncursesw.so: undefined reference to `__aeabi_f2d'
firework.pp(120,48) Error: Error while linking
firework.pp(120,48) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted

regards

Nataraj



More information about the fpc-devel mailing list