configure error, looking for libraries in wrong directory, what did i wrong?
On Wednesday 05 December 2007, Jakub Ladman wrote:
> I use crosscompiler toolchain produced by script from cirrus logic website
> instead of crossdev (crossdev failed to do that)
not exactly crossdev's fault. the cirrus one most likely has heavily patched
things. besides, the tuple they're using is plain wrong. there is
no "uclibcgnueabi". but whatever.
> I use the attached script armemerge.
> But if i try something like -
> # ./armemerge -va libsdl
> - i get this error
>
> configure:2420: checking for C compiler default output file name
> configure:2423:
> arm-linux-uclibcgnueabi-gcc -Os -pipe -L/home/ladmanj/cirrus/gentoo/lib
> -L/home/ladmanj/cirrus/gentoo/usr/lib -L/usr/local/arm/ep93xx-eabi-d1/lib
> -I/usr/local/arm/ep93xx-eabi-d1/include conftest.c >&5
> /usr/local/arm/ep93xx-eabi-d1/lib/gcc/arm-linux-uclibcgnueabi/4.1.2/../../.
>./../arm-linux-uclibcgnueabi/bin/ld: cannot find /lib/uclibc_nonshared.a
>
> the not founded file is present in one of the LDFLAGS -L directories, but
> it still tries to load it from absolute /lib path
their install script did something wrong. they probably didnt build gcc with
sysroot support, or the path they gave it is different from yours. most
likely the libc.so linker script is requesting "/lib/uclibc_nonshared.a" but
binutils has no idea how to locate it properly.
a proper setup would have binutils/gcc configured for sysroot and when looking
for "/lib/......." it'd actually prefix the sysroot. it also looks like they
arent properly setting the dev path and the run time path. otherwise it'd be
failing to find /usr/lib/uclibc_nonshared.a.
eeeeeeeeeeither way, i feel like this error would be reproducable without
emerge. this probably fails as well:
$ echo 'int main(){}' > test.c
$ arm-linux-uclibcgnueabi-gcc test.c
> If i made there a symlink, then it goes trough it and stops at a next file
> also not founded at /lib
if you're making symlinks/renaming system things, your toolchain is fucked.
stop trying to hodgepodge it.
-mike
|