[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: libicu48 on armhf not working for me



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 12/27/2011 05:56 PM, Loïc Minier wrote:
>  What you'd want to do is confirm that /usr/bin/derb is indeed a
>  hard-float binary (I don't know how to do this, this the heuristics
>  that Steve implemened in eglibc), check that it has the relevant NEEDED
>  entries for the SONAMEs of libicutu.so.48 and other libs, then check
>  that these libraries are indeed on the system, then check the contents
>  of ld.so.cache (ldconfig -p | grep libicutu), then check that the
>  binary references the right ld.so (readelf -a /usr/bin/derb | grep
>  ld-linux), it should be in the multiarch location and if not that it
>  should point to a symlink to it.  If all of that fails, strace.

This all looks okay to me, but I'm no expert:

# ldconfig -p | grep libicu
	libicuuc.so.48 (libc6,hard-float) => /usr/lib/libicuuc.so.48
	libicuuc.so (libc6,hard-float) => /usr/lib/libicuuc.so
	libicutu.so.48 (libc6,hard-float) => /usr/lib/libicutu.so.48
	libicutu.so (libc6,hard-float) => /usr/lib/libicutu.so
	libicutest.so.48 (libc6,hard-float) => /usr/lib/libicutest.so.48
	libicutest.so (libc6,hard-float) => /usr/lib/libicutest.so
	libiculx.so.48 (libc6,hard-float) => /usr/lib/libiculx.so.48
	libiculx.so (libc6,hard-float) => /usr/lib/libiculx.so
	libicule.so.48 (libc6,hard-float) => /usr/lib/libicule.so.48
	libicule.so (libc6,hard-float) => /usr/lib/libicule.so
	libicui18n.so.48 (libc6,hard-float) => /usr/lib/libicui18n.so.48
	libicui18n.so (libc6,hard-float) => /usr/lib/libicui18n.so
	libicuio.so.48 (libc6,hard-float) => /usr/lib/libicuio.so.48
	libicuio.so (libc6,hard-float) => /usr/lib/libicuio.so
	libicudata.so.48 (ELF) => /usr/lib/libicudata.so.48
	libicudata.so (ELF) => /usr/lib/libicudata.so

# readelf -a /usr/bin/derb  | grep ld-linux
      [Requesting program interpreter:
/lib/arm-linux-gnueabihf/ld-linux.so.3]

I opened a bug report with more detailed information here:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653457

The maintainer posted that he cannot help me and is looking for help
from the armhf porters. He is willing to include the fix if it appears.

I've run the /usr/bin/derb utility under strace and am including the
output with this email. It looks like it reads the libicudata.so.48
library and then just exits.

Can anyone confirm this issue exists apart from me?

>> I tried to rebuild the icu package on my armhf box and it fails during
>> the dpkg-buildpackage:
> 
>  That's a bit short and will require investigation.

I've put the full package build logs on the Debian bug report (above).
Is there possibly a clue in how the build box has built the packages
successfully, but then it fails when using the native tools on an armhf box?

Tony
- -- 
Anthony L. Awtrey

http://awtrey.com/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJO+1k1AAoJEAPVzrg8OofbgQAH/2uu9hD2MpHzVJPRWtTXQPyD
Tw3+ilhD6eM/8HXf5PpPHmhS5OZfbANWAZ7y4qspGStHvkomj/evXhR8FvrcWogM
KECFDnD5vzwDIfGxQslgD96oFYLuUP2W0bAg9FcVu6lw+ycAhw31J/LMNxJTZfcJ
c+7xFSD/xIo4O8I6YMHNceVlz05cnM5IYxo+9syFPJXmn6WDQs9S97Kof8RG+iKV
rQWntLW1KmX482t5Y2ds63CwEYpxXAJQ3rWjyth6kfDTN3AAbNnhHl/EJniXXTmi
dqEC9gsWwkW76jWu8KUX/pWAtsqozssJnCJKSesdTkL9g6BpVVUHsyumgiDHTaI=
=kg3A
-----END PGP SIGNATURE-----
$ strace /usr/bin/derb 
execve("/usr/bin/derb", ["/usr/bin/derb"], [/* 17 vars */]) = 0
brk(0)                                  = 0x13000
uname({sys="Linux", node="debian-armhf", ...}) = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40064000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=71214, ...}) = 0
mmap2(NULL, 71214, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400b4000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/lib/libicutu.so.48", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0ld\0\0004\0\0\0"..., 512) = 512
lseek(3, 97636, SEEK_SET)               = 97636
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1160) = 1160
lseek(3, 97300, SEEK_SET)               = 97300
read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 53) = 53
fstat64(3, {st_mode=S_IFREG|0644, st_size=98796, ...}) = 0
mmap2(NULL, 334200, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x4013c000
mprotect(0x40153000, 32768, PROT_NONE)  = 0
mmap2(0x4015b000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17) = 0x4015b000
mmap2(0x4015c000, 203128, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4015c000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/lib/libicui18n.so.48", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\260+\5\0004\0\0\0"..., 512) = 512
lseek(3, 1155604, SEEK_SET)             = 1155604
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1160) = 1160
lseek(3, 1155264, SEEK_SET)             = 1155264
read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 53) = 53
fstat64(3, {st_mode=S_IFREG|0644, st_size=1156764, ...}) = 0
mmap2(NULL, 1189916, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x4018e000
mprotect(0x402a3000, 28672, PROT_NONE)  = 0
mmap2(0x402aa000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x114) = 0x402aa000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/lib/libicuuc.so.48", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\240D\3\0004\0\0\0"..., 512) = 512
lseek(3, 953088, SEEK_SET)              = 953088
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1160) = 1160
lseek(3, 952752, SEEK_SET)              = 952752
read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 53) = 53
fstat64(3, {st_mode=S_IFREG|0644, st_size=954248, ...}) = 0
mmap2(NULL, 969868, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x402b1000
mmap2(0x40391000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe0) = 0x40391000
mmap2(0x4039a000, 15500, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4039a000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/arm-linux-gnueabihf/tls/v7l/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/arm-linux-gnueabihf/tls/v7l/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/lib/arm-linux-gnueabihf/tls/v7l/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/arm-linux-gnueabihf/tls/v7l", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/lib/arm-linux-gnueabihf/tls/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/arm-linux-gnueabihf/tls/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/lib/arm-linux-gnueabihf/tls/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/arm-linux-gnueabihf/tls", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/lib/arm-linux-gnueabihf/v7l/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/arm-linux-gnueabihf/v7l/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/lib/arm-linux-gnueabihf/v7l/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/arm-linux-gnueabihf/v7l", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/lib/arm-linux-gnueabihf/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/arm-linux-gnueabihf/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/lib/arm-linux-gnueabihf/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/arm-linux-gnueabihf", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0
open("/usr/lib/arm-linux-gnueabihf/tls/v7l/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/arm-linux-gnueabihf/tls/v7l/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/usr/lib/arm-linux-gnueabihf/tls/v7l/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/arm-linux-gnueabihf/tls/v7l", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/usr/lib/arm-linux-gnueabihf/tls/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/arm-linux-gnueabihf/tls/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/usr/lib/arm-linux-gnueabihf/tls/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/arm-linux-gnueabihf/tls", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/usr/lib/arm-linux-gnueabihf/v7l/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/arm-linux-gnueabihf/v7l/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/usr/lib/arm-linux-gnueabihf/v7l/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/arm-linux-gnueabihf/v7l", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/usr/lib/arm-linux-gnueabihf/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/arm-linux-gnueabihf/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/usr/lib/arm-linux-gnueabihf/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/arm-linux-gnueabihf", {st_mode=S_IFDIR|0755, st_size=32768, ...}) = 0
open("/lib/tls/v7l/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/tls/v7l/vfp", 0xbee85eb0)  = -1 ENOENT (No such file or directory)
open("/lib/tls/v7l/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/tls/v7l", 0xbee85eb0)      = -1 ENOENT (No such file or directory)
open("/lib/tls/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/tls/vfp", 0xbee85eb0)      = -1 ENOENT (No such file or directory)
open("/lib/tls/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/tls", 0xbee85eb0)          = -1 ENOENT (No such file or directory)
open("/lib/v7l/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/v7l/vfp", 0xbee85eb0)      = -1 ENOENT (No such file or directory)
open("/lib/v7l/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/v7l", 0xbee85eb0)          = -1 ENOENT (No such file or directory)
open("/lib/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib/vfp", 0xbee85eb0)          = -1 ENOENT (No such file or directory)
open("/lib/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/lib", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/usr/lib/tls/v7l/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/tls/v7l/vfp", 0xbee85eb0) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/v7l/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/tls/v7l", 0xbee85eb0)  = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/tls/vfp", 0xbee85eb0)  = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/tls", 0xbee85eb0)      = -1 ENOENT (No such file or directory)
open("/usr/lib/v7l/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/v7l/vfp", 0xbee85eb0)  = -1 ENOENT (No such file or directory)
open("/usr/lib/v7l/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/v7l", 0xbee85eb0)      = -1 ENOENT (No such file or directory)
open("/usr/lib/vfp/libicudata.so.48", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/vfp", 0xbee85eb0)      = -1 ENOENT (No such file or directory)
open("/usr/lib/libicudata.so.48", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0p\2\0\0004\0\0\0"..., 512) = 512
lseek(3, 18276904, SEEK_SET)            = 18276904
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 480) = 480
lseek(3, 18276732, SEEK_SET)            = 18276732
read(3, "A \0\0\0aeabi\0\1\26\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4,"..., 33) = 33
exit_group(1)                           = ?

Reply to: