[oi-dev] tcl and 64-bit modules
Alexander Pyhalov
alp at rsu.ru
Wed Oct 30 13:07:22 UTC 2013
Hello.
It seems our 64-bit tcl don't know where to look for modules. And it is
64-bit by default in /hipster. So, it's broken by default.
Does it work in /dev?
For example,
/usr/bin/amd64/tclsh
% package require Pgtcl
couldn't load file "/usr/lib/tcl8.5/pgtcl1.9/libpgtcl1.9.so": ld.so.1:
tclsh8.5: fatal: /usr/lib/tcl8.5/pgtcl1.9/libpgtcl1.9.so: wrong ELF
class: ELFCLASS32
% package require sqlite3
couldn't load file "/usr/lib/tcl8.5/sqlite3.7.17/libsqlite3.7.17.so":
ld.so.1: tclsh8.5: fatal:
/usr/lib/tcl8.5/sqlite3.7.17/libsqlite3.7.17.so: wrong ELF class: ELFCLASS32
Related issue https://www.illumos.org/issues/1066 is marked as resolved.
Is it a separate bug or is there any patch in /dev which fixes this?
$ truss -t open tclsh
open("/var/ld/64/ld.config", O_RDONLY) Err#2 ENOENT
open("/usr/lib/amd64/libc.so.1", O_RDONLY) = 3
open("/usr/lib/amd64/libtcl8.5.so", O_RDONLY) = 3
open("/usr/lib/amd64/libm.so.2", O_RDONLY) = 3
open("/usr/lib/amd64/libpthread.so.1", O_RDONLY) = 3
open("/usr/lib/locale//en_US.UTF-8/LC_CTYPE/LCL_DATA", O_RDONLY) = 3
/1: open("/var/run/name_service_door", O_RDONLY) = 5
/1: open("/usr/lib/tcl8.5/init.tcl", O_RDONLY) = 6
/1: open("/export/home/alp/.tclshrc", O_RDONLY) Err#2 ENOENT
% package require Pgtcl
/1: open("/usr/lib/tclIndex", O_RDONLY) Err#2 ENOENT
/1: open("/usr/lib/tcl8.5/tclIndex", O_RDONLY) = 6
/1: open("/usr/lib/amd64/tclIndex", O_RDONLY) Err#2 ENOENT
^ do we need to provide separate index here or patch existing one???
/1: open("/usr/lib/tcl8.5/history.tcl", O_RDONLY) = 6
/1: open("/usr/lib/tcl8.5/tm.tcl", O_RDONLY) = 6
/1: open("/usr/lib/tcl8/8.4/", O_RDONLY|O_NDELAY|O_LARGEFILE) = 6
/1: open("/usr/lib/tcl8/8.5/", O_RDONLY|O_NDELAY|O_LARGEFILE) = 6
/1: open("/usr/lib/tcl8.5/package.tcl", O_RDONLY) = 6
/1: open("/usr/lib/", O_RDONLY|O_NDELAY|O_LARGEFILE) = 6
/1: open("/usr/lib/tk8.5/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/expect5.45/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/rrdtool/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/tcl8.5/", O_RDONLY|O_NDELAY|O_LARGEFILE) = 6
/1: open("/usr/lib/tcl8.5/sqlite3.7.17/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/tcl8.5/opt0.4/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/tcl8.5/http1.0/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/tcl8.5/pgtcl1.9/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/amd64/", O_RDONLY|O_NDELAY|O_LARGEFILE) = 6
/1: open("/usr/lib/amd64/tk8.5/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/amd64/expect5.45/pkgIndex.tcl", O_RDONLY) = 6
/1: open("/usr/lib/amd64/libdl.so.1", O_RDONLY) = 6
/1: open("/usr/lib/tcl8.5/pgtcl1.9/libpgtcl1.9.so", O_RDONLY) = 6
/1: open("/usr/lib/locale/en_US.UTF-8/LC_MESSAGES/SUNW_OST_SGS.mo",
O_RDONLY) Err#2 ENOENT
/1:
open("/usr/lib/locale/en_US.UTF-8/LC_MESSAGES/SUNW_OST_OSLIB.mo",
O_RDONLY) Err#2 ENOENT
/1: open("/usr/lib/tcl8.5/pgtcl1.9/libpgtcl1.9.so", O_RDONLY) = 6
couldn't load file "/usr/lib/tcl8.5/pgtcl1.9/libpgtcl1.9.so": ld.so.1:
tclsh8.5: fatal: /usr/lib/tcl8.5/pgtcl1.9/libpgtcl1.9.so: wrong ELF
class: ELFCLASS32
--
Best regards,
Alexander Pyhalov,
system administrator of Computer Center of Southern Federal University
More information about the oi-dev
mailing list