Oberon Community Platform Forum
October 16, 2019, 03:40:55 AM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: libc.so.6, libX11.so.6 and libX11.so  (Read 7262 times)
peasthope
Full Member
***
Posts: 100


WWW
« on: September 24, 2014, 05:39:03 PM »

After an upgrade of the OLPC XO system from 13.2.0 to 13.2.1,
LinuxAos 5730 snags on some shared objects.

[olpc@xo-53-1d-bb Work]$ aos
Unix.Dlopen: loading library libc.so.6 failed
LinuxAos (rev.5730): Kernel: Initialized and started.
Unix.Dlopen: loading library libX11.so.6 failed
Unix.Dlopen: loading library libX11.so failed
X11.LinkToX:  Unix.Dlopen( libX11.so ) failed

The files exist in reasonable locations; perhaps not where LinuxAos
expects to find them.  There is no /usr/aos/source/Unix.Mod or
/usr/aos/source/Unix.c and I haven't found Unix.Dlopen.
Any ideas about this?

Thanks,                               ... Peter E.

Logged
fld
Newbie
*
Posts: 15


« Reply #1 on: September 25, 2014, 10:16:17 AM »

There are 3 sources for the module 'Unix':

    Linux.Unix.Mod    (* for LinuxAos *)
    Darwin.Unix.Mod  (* for DarwinAos *)
    Solaris.Unix.Mod  (* for SolarisAos *)


-- Guenter
Logged
peasthope
Full Member
***
Posts: 100


WWW
« Reply #2 on: September 30, 2014, 10:35:38 PM »

In LinuxAos rev.5730 the body of Linux.I386.Unix.Mod records two paths.
   libraryPaths[0] := "/lib/i386-linux-gnu";
   libraryPaths[1] := "/usr/lib/i386-linux-gnu";
   noPaths := 2;

Debian Wheezy has matching locations.

peter@dalton:~$ ls -ld /lib/* | grep ^d | grep 86
drwxr-xr-x  5 root root  12288 Sep 19 05:43 /lib/i386-linux-gnu
drwxr-xr-x  2 root root   4096 Aug  2  2012 /lib/x86_64-linux-gnu

peter@dalton:~$ ls -ld /usr/lib/* | grep ^d | grep 86
drwxr-xr-x 62 root root        65536 Sep 29 18:54 /usr/lib/i386-linux-gnu
drwxr-xr-x  2 root root         4096 Feb 19  2013 /usr/lib/i486
drwxr-xr-x  2 root root         4096 Feb 19  2013 /usr/lib/i586
drwxr-xr-x  3 root root         4096 Jun 11  2013 /usr/lib/i686
drwxr-xr-x  2 root root         4096 Aug  2  2012 /usr/lib/x86_64-linux-gnu

The OLPC system, where LinuxAos fails, has neither of the LinuxAos paths.  

[olpc@xo-53-1d-bb ~]$ ls -ld /lib/* | grep ^d | grep 86
drwxr-xr-x.  3 root root     4096 Aug 19  2013 /lib/i686

[olpc@xo-53-1d-bb ~]$ ls -ld /usr/lib/* | grep ^d | grep 86
drwxr-xr-x.  3 root root     4096 Aug 19  2013 /usr/lib/i686

I've made links in the OLPC system,

ln -s       /lib/i686  /lib/i386-linux-gnu
ln -s /usr/lib/i686  /usr/lib/i386-linux-gnu

but the problem persists.  Output from "strace -o straceout aos" is visible at http://carnot.yi.org/straceout .  For failures in directory and file access, search for "No s" .  I haven't studied it thoroughly yet.  Any advice is welcome.

Thanks,                   ... Peter E.
« Last Edit: October 01, 2014, 03:03:14 PM by peasthope » Logged
peasthope
Full Member
***
Posts: 100


WWW
« Reply #3 on: October 02, 2014, 02:15:10 PM »

There are 3 sources for the module 'Unix':

    Linux.Unix.Mod    (* for LinuxAos *)
    Darwin.Unix.Mod  (* for DarwinAos *)
    Solaris.Unix.Mod  (* for SolarisAos *)

No offense Guenter but in rev.5730 I have six.
peter@dalton:~$ ls /usr/aos/source/*Unix.Mod
/usr/aos/source/Darwin.AMD64.Unix.Mod  /usr/aos/source/Linux.I386.Unix.Mod
/usr/aos/source/Darwin.I386.Unix.Mod   /usr/aos/source/Solaris.AMD64.Unix.Mod
/usr/aos/source/Linux.AMD64.Unix.Mod   /usr/aos/source/Solaris.I386.Unix.Mod

When you name "Linux.Unix.Mod", that refers to both Linux.AMD64.Unix.Mod and Linux.I386.Unix.Mod?

Regards,                   ... Peter E.

Logged
fld
Newbie
*
Posts: 15


« Reply #4 on: October 06, 2014, 09:17:08 AM »

No. Linux.Unix.Mod was renamed to Linux.I386.Unix.Mod recently and
a new module Linux.AMD64.Unix.Mod was added for the upcoming
64-bit LinuxAos.

-- Guenter
Logged
fnecati
Jr. Member
**
Posts: 60


« Reply #5 on: October 08, 2014, 02:14:55 PM »

Could you test aos from linux terminal (command line testing module without X11 window);

   
Code:
aos -x StandaloneDemo.Do -lines 5

If this command works, then check whether the following library files are

    libcname* = "libc.so.6";
   libmname* = "libm.so.6";
   libX11name* = "libX11.so.6";
   libXextname* = "libXext.so.6";

 availabe in the search paths:
    libraryPaths[0] := "/lib/i386-linux-gnu";
   libraryPaths[1] := "/usr/lib/i386-linux-gnu";
Logged
peasthope
Full Member
***
Posts: 100


WWW
« Reply #6 on: November 10, 2014, 01:50:17 PM »

Problem: LinuxAos rev.5730 requires /lib/i386-linux-gnu/{libc.so.6,libX11.so.6,libX11.so} but OLPC 13.2.1 has /lib/{libc.so.6,libX11.so.6,libX11.so}.

Solution: sudo ln -s /lib /lib/i386-linux-gnu

Regards,                    ... Peter E.
« Last Edit: November 10, 2014, 03:08:25 PM by peasthope » Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!