[Buildroot] [buildroot 0003004]: undefined reference problem

bugs at busybox.net bugs at busybox.net
Tue Apr 22 12:29:10 UTC 2008


A NOTE has been added to this issue. 
====================================================================== 
http://busybox.net/bugs/view.php?id=3004 
====================================================================== 
Reported By:                gebecom
Assigned To:                buildroot
====================================================================== 
Project:                    buildroot
Issue ID:                   3004
Category:                   Architecture Specific
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     assigned
====================================================================== 
Date Submitted:             04-21-2008 01:17 PDT
Last Modified:              04-22-2008 05:29 PDT
====================================================================== 
Summary:                    undefined reference problem
Description: 
/opt/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/bin/ld:
cannot find /opt/usr/local/arm/gcc-4.1.2-uclibc/lib/libc.so.0
collect2: ld returned 1 exit status

actually it is trying to get libc.so.s0 from a wrong path, i copied the
files at that particular file path but it fails at some next stage giving
the error details below...

/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__towupper_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strtold_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strftime_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__nl_langinfo_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__newlocale'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__freelocale'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__wcsxfrm_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__iswctype_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__towlower_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strtod_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__uselocale'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strcoll_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__wctype_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strxfrm_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__wcsftime_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strtof_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__wcscoll_l'
/opt/atmel/gcc-4.1.2-uclibc/bin/../lib/gcc/arm-linux-uclibc/4.1.2/../../../../arm-linux-uclibc/lib/libstdc++.so:
undefined reference to `__duplocale'

please guide me how can i fix this issue and the possible reason, 
====================================================================== 

---------------------------------------------------------------------- 
 hmoffatt - 04-21-08 07:09  
---------------------------------------------------------------------- 
Where did you get your compiler? It doesn't seem to have been built with
buildroot (in that case it would be installed in build_$arch/staging_dir,
not in /opt/atmel). I think you should complain to the vendor, as
buildroot can't fix a broken external toolchain. 

---------------------------------------------------------------------- 
 gebecom - 04-21-08 07:17  
---------------------------------------------------------------------- 
i have wrong kopiert, hier is the error
how can i solve the question?
Generating embedded module rules ...
   [CC] stereorize.c -> stereorize.o
   [CC] frame.c -> frame.o
   [LD] stereorize.o frame.o -> stereorize
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__towupper_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strtold_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strftime_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__nl_langinfo_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__newlocale'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__freelocale'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__wcsxfrm_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__iswctype_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__towlower_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strtod_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__uselocale'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strcoll_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__wctype_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strxfrm_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__wcsftime_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__strtof_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__wcscoll_l'
/build-tools/buildroot/build_mipsel/staging_dir/bin-ccache/../lib/gcc/mipsel-linux-uclibc/3.4.6/../../../../mipsel-linux-uclibc/lib/libstdc++.so:
undefined reference to `__duplocale'
collect2: ld returned 1 exit status
make[1]: *** [stereorize] Error 1
make: *** [utils] Error 2

 

---------------------------------------------------------------------- 
 hmoffatt - 04-21-08 07:24  
---------------------------------------------------------------------- 
It looks like whatever package you are building (stereorize.o etc) needs
WCHAR support in uClibc which is disabled in your build. 

make uclibc-menuconfig and turn on "wide character support" under "string
and stdio" support. 

---------------------------------------------------------------------- 
 gebecom - 04-22-08 03:50  
---------------------------------------------------------------------- 
it works!
thanks!

 

---------------------------------------------------------------------- 
 hmoffatt - 04-22-08 03:02  
---------------------------------------------------------------------- 
Can you tell us which package was failing to compile? Maybe we can prevent
this problem from happening to other people. Thanks. 

---------------------------------------------------------------------- 
 gebecom - 04-22-08 03:56  
---------------------------------------------------------------------- 
i solve the problem with your guide.
i will cross compile asterisk.(port to asterisk)
after configure i excute make.
but it fails, error is:
[CC] hash/hash.c -> hash/hash.o
   [CC] hash/hash_bigkey.c -> hash/hash_bigkey.o
   [CC] hash/hash_buf.c -> hash/hash_buf.o
   [CC] hash/hash_func.c -> hash/hash_func.o
   [CC] hash/hash_log2.c -> hash/hash_log2.o
   [CC] hash/hash_page.c -> hash/hash_page.o
   [CC] hash/ndbm.c -> hash/ndbm.o
   [CC] btree/bt_close.c -> btree/bt_close.o
   [CC] btree/bt_conv.c -> btree/bt_conv.o
   [CC] btree/bt_debug.c -> btree/bt_debug.o
   [CC] btree/bt_delete.c -> btree/bt_delete.o
   [CC] btree/bt_get.c -> btree/bt_get.o
   [CC] btree/bt_open.c -> btree/bt_open.o
   [CC] btree/bt_overflow.c -> btree/bt_overflow.o
   [CC] btree/bt_page.c -> btree/bt_page.o
   [CC] btree/bt_put.c -> btree/bt_put.o
   [CC] btree/bt_search.c -> btree/bt_search.o
   [CC] btree/bt_seq.c -> btree/bt_seq.o
   [CC] btree/bt_split.c -> btree/bt_split.o
   [CC] btree/bt_utils.c -> btree/bt_utils.o
   [CC] db/db.c -> db/db.o
   [CC] mpool/mpool.c -> mpool/mpool.o
   [CC] recno/rec_close.c -> recno/rec_close.o
   [CC] recno/rec_delete.c -> recno/rec_delete.o
   [CC] recno/rec_get.c -> recno/rec_get.o
   [CC] recno/rec_open.c -> recno/rec_open.o
   [CC] recno/rec_put.c -> recno/rec_put.o
   [CC] recno/rec_search.c -> recno/rec_search.o
   [CC] recno/rec_seq.c -> recno/rec_seq.o
   [CC] recno/rec_utils.c -> recno/rec_utils.o
   [AR] hash/hash.o hash/hash_bigkey.o hash/hash_buf.o hash/hash_func.o
hash/hash_log2.o hash/hash_page.o hash/ndbm.o btree/bt_close.o
btree/bt_conv.o btree/bt_debug.o btree/bt_delete.o btree/bt_get.o
btree/bt_open.o btree/bt_overflow.o btree/bt_page.o btree/bt_put.o
btree/bt_search.o btree/bt_seq.o btree/bt_split.o btree/bt_utils.o db/db.o
mpool/mpool.o recno/rec_close.o recno/rec_delete.o recno/rec_get.o
recno/rec_open.o recno/rec_put.o recno/rec_search.o recno/rec_seq.o
recno/rec_utils.o -> libdb1.a
   [LD] abstract_jb.o acl.o aescrypt.o aeskey.o aestab.o alaw.o app.o
ast_expr2.o ast_expr2f.o asterisk.o astmm.o astobj2.o audiohook.o
autoservice.o callerid.o cdr.o channel.o chanvars.o cli.o config.o
cryptostub.o db.o devicestate.o dial.o dns.o dnsmgr.o dsp.o enum.o file.o
fixedjitterbuf.o frame.o fskmodem.o global_datastores.o http.o image.o
indications.o io.o jitterbuf.o loader.o logger.o manager.o md5.o netsock.o
pbx.o plc.o privacy.o rtp.o say.o sched.o sha1.o slinfactory.o srv.o
stdtime/localtime.o strcompat.o tdd.o term.o threadstorage.o translate.o
udptl.o ulaw.o utils.o editline/libedit.a db1-ast/libdb1.a -> asterisk
dns.o: In function `ast_search_dns':
/gebecom/asterisk-1.4.19/main/dns.c:285: undefined reference to
`__res_close'
collect2: ld returned 1 exit status
make[1]: *** [asterisk] Error 1
make: *** [main] Error 2

please guide me how can i fix this issue and the possible reason,
thanks in advances 

---------------------------------------------------------------------- 
 bernhardf - 04-22-08 05:29  
---------------------------------------------------------------------- 
asterisk should be fixed not to rely on such BSD-ism.
I suppose you fix asterisk and submit your patch to the
asterisk-developers.

As a quick workaround, enable res_close in uClibc (IIRC in networking,
marged BSD-compat). 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
04-21-08 01:17  gebecom        New Issue                                    
04-21-08 01:17  gebecom        Status                   new => assigned     
04-21-08 01:17  gebecom        Assigned To               => buildroot       
04-21-08 07:09  hmoffatt       Note Added: 0006794                          
04-21-08 07:14  gebecom        Issue Monitored: gebecom                     
04-21-08 07:16  gebecom        Note Added: 0006804                          
04-21-08 07:17  gebecom        Note Edited: 0006804                         
04-21-08 07:24  hmoffatt       Note Added: 0006814                          
04-21-08 07:35  gebecom        Note Added: 0006824                          
04-21-08 07:37  gebecom        Note Edited: 0006824                         
04-21-08 07:38  gebecom        Note Edited: 0006824                         
04-21-08 08:04  gebecom        Note Added: 0006834                          
04-22-08 02:46  gebecom        Note Deleted: 0006834                        
04-22-08 02:46  gebecom        Note Edited: 0006824                         
04-22-08 03:02  hmoffatt       Note Added: 0006874                          
04-22-08 03:50  gebecom        Note Edited: 0006824                         
04-22-08 03:56  gebecom        Note Added: 0006884                          
04-22-08 05:29  bernhardf      Note Added: 0006904                          
======================================================================




More information about the buildroot mailing list