Bug 525

Summary: sed can't find libintl
Product: buildroot Reporter: Daniele Salvatore Albano <d.albano>
Component: OtherAssignee: unassigned
Status: RESOLVED FIXED    
Severity: normal CC: buildroot
Priority: P5    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Host: Ubuntu 9.0.4 Server 32 Bit Target: i686
Build: i686
Attachments: my configuration
buildroot make output
main sed makefile (the one in sed main directory)
sed specific makefile (the one under sed-x.x.x/sed subdirectory)

Description Daniele Salvatore Albano 2009-08-02 11:18:12 UTC
Hi,

i'm trying to compile sed, but without success. It complains about missing libintl, but it is in staging dir (under usr/lib)

daniele@linux-ubuntu-dev:~/Development/OPBXA/buildroot-git$ ls build_i686/staging_dir/usr/lib/libintl.*
build_i686/staging_dir/usr/lib/libintl.a   build_i686/staging_dir/usr/lib/libintl.so.8
build_i686/staging_dir/usr/lib/libintl.la  build_i686/staging_dir/usr/lib/libintl.so.8.0.1
build_i686/staging_dir/usr/lib/libintl.so

If i try to build sed manually(entering in build_i686/sed-x.x.x and doing make) after that buildroot fails  it compiles successfully and seems to looking for the correct libraries. If i do an ldd on sed, i get this:
daniele@linux-ubuntu-dev:~/Development/OPBXA/buildroot-git/build_i686/sed-4.1.5/sed$ ldd sed
        linux-gate.so.1 =>  (0xb7f25000)
        libintl.so.8 => not found
        libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7dbb000)
        /lib/ld-linux.so.2 (0xb7f26000)

On my system libintl.so.8 doesn't exists, i searched for it using find (find / -name libintl.so.8) and using locate (locate libintl.so.8)
Comment 1 Daniele Salvatore Albano 2009-08-02 11:18:54 UTC
Created attachment 543 [details]
my configuration
Comment 2 Daniele Salvatore Albano 2009-08-02 11:19:33 UTC
Created attachment 545 [details]
buildroot make output
Comment 3 Daniele Salvatore Albano 2009-08-02 11:20:07 UTC
Created attachment 547 [details]
main sed makefile (the one in sed main directory)
Comment 4 Daniele Salvatore Albano 2009-08-02 11:20:43 UTC
Created attachment 549 [details]
sed specific makefile (the one under sed-x.x.x/sed subdirectory)
Comment 5 Peter Korsgaard 2009-08-02 20:38:08 UTC
Strange, I cannot reproduce it here (on an ARM config). Your config is kind of strange, as you would normally not enable libintl if your toolchain has locale support.
May I ask why you are not simply using the busybox sed applet instead? Most buildroot users do, so that one sees a lot more testing (not that the big sed shouldn't work)
Comment 6 Daniele Salvatore Albano 2009-08-02 20:53:36 UTC
I'd prefer to don't use busybox because i'm building an generic appliance root for non embed machines: i need some stuff that busybox can't supply so, to use it, i should mix too much busybox with non-busybox stuff so i'd preferred to don't use it at all.

Libintl is selected for dependency, if i don't remember bad, but i cannot check now, i've shutdown my compile station, i'll check tommorrow.

I'm using an external toolchain, based on glibc 2.9 and kernel 2.6.29.4, to do the build, can this be the problem? I'm using crosstool-ng to build the toolchain.
Comment 7 Ulf Samuelsson 2009-08-03 09:14:28 UTC
"<STAGING_DIR>/usr/include/libintl.h" should come from gettext,
but "package/gettext/gettext.mk" deletes libintl.h
as part of postprocessing the install.

Comment 8 Daniele Salvatore Albano 2009-08-03 09:59:11 UTC
The problem is related to libintl.so, not to libintl.h
Comment 9 Thomas Petazzoni 2009-08-04 15:37:58 UTC
Ok, issue reproduced here.