gnome-core i omf

Tomasz Kłoczko kloczek w rudy.mif.pg.gda.pl
Wto, 5 Lis 2002, 15:36:57 CET


On Tue, 5 Nov 2002, Andrzej Krzysztofowicz wrote:

> > 
> > Chyba jeszcze nie wszystkie *.omf są poprawione, albo coś innego jest
> > zwalone:
> 
> Raczej zwalony jest iconv. Ze strace'a:
> 
> [pid 13956] open("/usr/lib/gconv/EUC-JP.so", O_RDONLY) = 11
>                                 ^^^^^^^^^^
> [pid 13956] read(11, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 \t\0\000"..., 1024) = 1024
> [pid 13956] fstat(11, {st_mode=S_IFREG|0755, st_size=11304, ...}) = 0
> [pid 13956] old_mmap(NULL, 14212, PROT_READ|PROT_EXEC, MAP_PRIVATE, 11, 0) = 0x40252000
> [pid 13956] mprotect(0x40255000, 1924, PROT_NONE) = 0
> [pid 13956] old_mmap(0x40255000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 11, 0x2000) = 0x40255000
> [pid 13956] close(11)                   = 0
> [pid 13956] open("/etc/ld.so.cache", O_RDONLY) = 11
> [pid 13956] fstat(11, {st_mode=S_IFREG|0644, st_size=77957, ...}) = 0
> [pid 13956] old_mmap(NULL, 77957, PROT_READ, MAP_PRIVATE, 11, 0) = 0x4026d000
> [pid 13956] close(11)                   = 0
> [pid 13956] open("/lib/libJIS.so", O_RDONLY) = -1 ENOENT (No such file or directory)
> [pid 13956] open("/usr/lib/libJIS.so", O_RDONLY) = -1 ENOENT (No such file or directory)
> 
> [ a ta biblioteka lezy gdzie indziej, gdzie jej iconv nie szuka:
> 
> $ rpm -ql iconv|grep libJIS.so
> /usr/lib/gconv/libJIS.so
> 
> ] 
> 
> [pid 13956] munmap(0x4026d000, 77957)   = 0
> [pid 13956] munmap(0x40252000, 14212)   = 0
> [pid 13956] write(2, "/usr/share/omf/gnome-applets/asc"..., 54/usr/share/omf/gnome-applets/asclock_applet-ja.omf:1: ) = 54
> [pid 13956] write(2, "error: ", 7error: )      = 7
> [pid 13956] write(2, "char encoding EUC-JPnot supporte"..., 34char encoding EUC-JPnot supported
> 
> Czyzby znowy przerzezbienie z RPATH ?

Ano niestety.
Kilka modułów iconva dl zaoszczędzenai miejsca na tablice pzrekodowań ma 
wydzielone części wspólne w osobne biblioteki. Konkretnie dotyczy to:

$ rpm -ql iconv | grep gconv/lib
/usr/lib/gconv/libCNS.so
/usr/lib/gconv/libGB.so
/usr/lib/gconv/libISOIR165.so
/usr/lib/gconv/libJIS.so
/usr/lib/gconv/libKSC.so

Proste rozwiązanie powyższego mgłoby polegać na przeniesieniu tych plików
do /usr/lib/. Inne mogłoby polegać na wyłączniu używania chrpath w glibc.

kloczek
-- 
-----------------------------------------------------------
*Ludzie nie mają problemów, tylko sobie sami je stwarzają*
-----------------------------------------------------------
Tomasz Kłoczko, sys adm @zie.pg.gda.pl|*e-mail: kloczek w rudy.mif.pg.gda.pl*



Więcej informacji o liście dyskusyjnej pld-devel-pl