Problems building for ARM.

walter harms wharms at bfs.de
Tue Mar 2 15:53:55 UTC 2010



Gary Altenberg schrieb:
> Walter,
> 
> Thanks for the info but I don't understand. I cannot find any use of "jpeg"
> or "mgext" in the code. Where are the libraries defined as being static or
> shared? The only thing I can find is the CONFIG_STATIC option.
> 
> If I turn on the CONFIG_STATIC option I get this:
> 
> Trying libraries: crypt m
> Failed: -Wl,--start-group -lcrypt -lm -Wl,--end-group
> Output of:
> arm-linux-gcc -Wall -Wshadow -Wwrite-strings -Wundef -Wstrict-prototypes
> -Wunused -Wunused-parameter -Wunused-function -Wunused-value
> -Wmissing-prototypes -Wmissing-declarations -Wdeclaration-after-statement
> -fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer
> -ffunction-sections -fdata-sections -fno-guess-branch-probability
> -funsigned-char -static-libgcc -falign-functions=1 -falign-jumps=1
> -falign-labels=1 -falign-loops=1 -Os -elf2flt -static -o busybox_unstripped
> -Wl,--sort-common -Wl,--sort-section,alignment -Wl,--start-group
> applets/built-in.o archival/lib.a archival/libunarchive/lib.a
> console-tools/lib.a coreutils/lib.a coreutils/libcoreutils/lib.a
> debianutils/lib.a e2fsprogs/lib.a editors/lib.a findutils/lib.a init/lib.a
> libbb/lib.a libpwdgrp/lib.a loginutils/lib.a mailutils/lib.a miscutils/lib.a
> modutils/lib.a networking/lib.a networking/libiproute/lib.a
> networking/udhcp/lib.a printutils/lib.a procps/lib.a runit/lib.a
> selinux/lib.a shell/lib.a sysklogd/lib.a util-linux/lib.a
> util-linux/volume_id/lib.a archival/built-in.o
> archival/libunarchive/built-in.o console-tools/built-in.o
> coreutils/built-in.o coreutils/libcoreutils/built-in.o
> debianutils/built-in.o e2fsprogs/built-in.o editors/built-in.o
> findutils/built-in.o init/built-in.o libbb/built-in.o libpwdgrp/built-in.o
> loginutils/built-in.o mailutils/built-in.o miscutils/built-in.o
> modutils/built-in.o networking/built-in.o networking/libiproute/built-in.o
> networking/udhcp/built-in.o printutils/built-in.o procps/built-in.o
> runit/built-in.o selinux/built-in.o shell/built-in.o sysklogd/built-in.o
> util-linux/built-in.o util-linux/volume_id/built-in.o -Wl,--end-group
> -Wl,--start-group -lcrypt -lm -Wl,--end-group
> ==========
> libbb/lib.a(xconnect.o): In function `str2sockaddr':
> xconnect.c:(.text.str2sockaddr+0xf4): warning: Using 'getaddrinfo' in
> statically linked applications requires at runtime the shared libraries from
> the glibc version used for linking
> networking/lib.a(inetd.o): In function `reread_config_file':
> inetd.c:(.text.reread_config_file+0x5f8): warning: Using 'getservbyname' in
> statically linked applications requires at runtime the shared libraries from
> the glibc version used for linking
> /usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/bin/ld.real: error:
> no memory region specified for loadable section `__libc_freeres_fn'
> collect2: ld returned 1 exit status
> make: *** [busybox_unstripped] Error 1
> 
> Thanks for your help,
> Gary
> 
> -----Original Message-----
> From: walter harms [mailto:wharms at bfs.de] 
> Sent: Tuesday, March 02, 2010 2:13 AM
> To: Gary Altenberg
> Cc: busybox at busybox.net
> Subject: Re: Problems building for ARM.
> 
> May be that is helpful,
> 
> http://blackfin.uclinux.org/gf/project/toolchain/forum/?_forum_action=ForumM
> essageBrowse&thread_id=3381&action=ForumBrowse
> 
> re,
>  wh
> 
> 
> Gary Altenberg schrieb:
>> Hello,
>>
>> I have been attempting to build the latest release of Busybox for an Arm 7
>> board. I am running uClinux using a LPC2468. When I try to build I get:
>>
>> Trying libraries: crypt m
>> Failed: -Wl,--start-group -lcrypt -lm -Wl,--end-group
>> Output of:
>> arm-linux-gcc -Wall -Wshadow -Wwrite-strings -Wundef -Wstrict-prototypes
>> -Wunused -Wunused-parameter -Wunused-function -Wunused-value
>> -Wmissing-prototypes -Wmissing-declarations -Wdeclaration-after-statement
>> -fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer
>> -ffunction-sections -fdata-sections -fno-guess-branch-probability
>> -funsigned-char -static-libgcc -falign-functions=1 -falign-jumps=1
>> -falign-labels=1 -falign-loops=1 -Os -elf2flt -o busybox_unstripped
>> -Wl,--sort-common -Wl,--sort-section,alignment -Wl,--gc-sections
>> -Wl,--start-group applets/built-in.o archival/lib.a
>> archival/libunarchive/lib.a console-tools/lib.a coreutils/lib.a
>> coreutils/libcoreutils/lib.a debianutils/lib.a e2fsprogs/lib.a
> editors/lib.a
>> findutils/lib.a init/lib.a libbb/lib.a libpwdgrp/lib.a loginutils/lib.a
>> mailutils/lib.a miscutils/lib.a modutils/lib.a networking/lib.a
>> networking/libiproute/lib.a networking/udhcp/lib.a printutils/lib.a
>> procps/lib.a runit/lib.a selinux/lib.a shell/lib.a sysklogd/lib.a
>> util-linux/lib.a util-linux/volume_id/lib.a archival/built-in.o
>> archival/libunarchive/built-in.o console-tools/built-in.o
>> coreutils/built-in.o coreutils/libcoreutils/built-in.o
>> debianutils/built-in.o e2fsprogs/built-in.o editors/built-in.o
>> findutils/built-in.o init/built-in.o libbb/built-in.o libpwdgrp/built-in.o
>> loginutils/built-in.o mailutils/built-in.o miscutils/built-in.o
>> modutils/built-in.o networking/built-in.o networking/libiproute/built-in.o
>> networking/udhcp/built-in.o printutils/built-in.o procps/built-in.o
>> runit/built-in.o selinux/built-in.o shell/built-in.o sysklogd/built-in.o
>> util-linux/built-in.o util-linux/volume_id/built-in.o -Wl,--end-group
>> -Wl,--start-group -lcrypt -lm -Wl,--end-group
>> ==========
>> /usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/bin/ld.real:
>> Warning: gc-sections option ignored
>> /usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/bin/ld.real:
> error:
>> no memory region specified for loadable section `.plt'
>> collect2: ld returned 1 exit status
>> make: *** [busybox_unstripped] Error 1
>>
>> Can anyone point me in the right direction?
>>



I have no idea what you original problem may be but your linker reported:
"no memory region specified for loadable section `.plt'"

It seems that the arm-gcc generated that code under certain conditions. It has nothing
with the files you use but with the options you/busybox use.
e.g. "Warning: gc-sections option ignored"

As allways with debugging
0. check you toolchain when crosscompiling ( does hello "word" work ?)
1. reduce the number of options (you can get the ld commandline with gcc -v), and reduce one by one
2. make an educated guess what the problem actualy is (ask google,yahoo, what ever)

Sometimes we can see what the error might be, sometime we can only point in a direction.

re,
 wh





More information about the busybox mailing list