Re: Processed: Re: Bug#227308: lapack: too many levels of symbolic links on so
Greetings, and thanks for your reply! OK consider the following
sequence of commands, on woody (works) and on sid (broken):
=============================================================================
woody
=============================================================================
intech19:/mnt/div/tex# ls -l /etc/alternatives/liblapack* /usr/lib/liblapack*so* |grep -v _atlas
lrwxrwxrwx 1 root root 27 Jan 16 10:03 /etc/alternatives/liblapack2.so -> /usr/lib/atlas/liblapack.so
lrwxrwxrwx 1 root root 14 Feb 4 2003 /usr/lib/liblapack.so -> liblapack.so.2
lrwxrwxrwx 1 root root 16 Feb 4 2003 /usr/lib/liblapack.so.2 -> liblapack.so.2.0
-rw-r--r-- 1 root root 4205508 Oct 29 2002 /usr/lib/liblapack.so.2.0
lrwxrwxrwx 1 root root 31 Apr 22 2002 /usr/lib/liblapack2.so -> /etc/alternatives/liblapack2.so
intech19:/mnt/div/tex# cat /etc/ld.so.conf
/usr/X11R6/lib
/usr/lib/atlas
intech19:/mnt/div/tex# ldconfig
intech19:/mnt/div/tex# ls -l /etc/alternatives/liblapack* /usr/lib/liblapack*so* |grep -v _atlas
lrwxrwxrwx 1 root root 27 Jan 16 10:03 /etc/alternatives/liblapack2.so -> /usr/lib/atlas/liblapack.so
lrwxrwxrwx 1 root root 14 Feb 4 2003 /usr/lib/liblapack.so -> liblapack.so.2
lrwxrwxrwx 1 root root 16 Feb 4 2003 /usr/lib/liblapack.so.2 -> liblapack.so.2.0
-rw-r--r-- 1 root root 4205508 Oct 29 2002 /usr/lib/liblapack.so.2.0
lrwxrwxrwx 1 root root 31 Apr 22 2002 /usr/lib/liblapack2.so -> /etc/alternatives/liblapack2.so
=============================================================================
sid
=============================================================================
intech66:/fix/i/camm/atlas/atlas3-3.6.0# ls -l /etc/alternatives/liblapack* /usr/lib/liblapack*so* |grep -v _atlas
lrwxrwxrwx 1 root root 27 Jan 16 15:02 /etc/alternatives/liblapack2.so -> /usr/lib/atlas/liblapack.so
lrwxrwxrwx 1 root root 14 Jan 16 15:00 /usr/lib/liblapack.so -> liblapack.so.2
lrwxrwxrwx 1 root root 16 Jan 16 15:08 /usr/lib/liblapack.so.2 -> liblapack.so.2.0
-rw-r--r-- 1 root root 4438832 Jul 31 23:20 /usr/lib/liblapack.so.2.0
lrwxrwxrwx 1 root root 31 Jan 16 15:02 /usr/lib/liblapack2.so -> /etc/alternatives/liblapack2.so
intech66:/fix/i/camm/atlas/atlas3-3.6.0# cat /etc/ld.so.conf
/usr/X11R6/lib
/usr/lib/atlas
intech66:/fix/i/camm/atlas/atlas3-3.6.0# ldconfig
intech66:/fix/i/camm/atlas/atlas3-3.6.0# ls -l /etc/alternatives/liblapack* /usr/lib/liblapack*so* |grep -v _atlas
lrwxrwxrwx 1 root root 27 Jan 16 15:02 /etc/alternatives/liblapack2.so -> /usr/lib/atlas/liblapack.so
lrwxrwxrwx 1 root root 14 Jan 16 15:00 /usr/lib/liblapack.so -> liblapack.so.2
lrwxrwxrwx 1 root root 13 Jan 16 15:08 /usr/lib/liblapack.so.2 -> liblapack2.so
-rw-r--r-- 1 root root 4438832 Jul 31 23:20 /usr/lib/liblapack.so.2.0
lrwxrwxrwx 1 root root 31 Jan 16 15:02 /usr/lib/liblapack2.so -> /etc/alternatives/liblapack2.so
=============================================================================
The problem is that on sid, ldconfig wrote the following link:
lrwxrwxrwx 1 root root 13 Jan 16 15:08 /usr/lib/liblapack.so.2 -> liblapack2.so
Please let me know if further clarification is needed.
Take care,
GOTO Masanori <gotom@debian.or.jp> writes:
> Hi!
>
> At 15 Jan 2004 12:36:38 -0500,
> Camm Maguire wrote:
> > This bug affects several packages, so lets take lapack-dev as an
> > example. In the package itself, the link reads
> >
> > liblapack.so -> liblapack.so.2
> >
> > where the latter, provided in the lapack package, reads
> >
> > liblapack.so.2 -> liblapack.so.2.0 (a file)
> >
> > This is the normal setup. In addition, lapack-dev provides an
> > *alternative* link
>
> That's OK.
>
> > liblapack2.so -> /etc/alternatives/liblapack2.so
> >
> > which is set via the alternative mechanism to one of several choices,
> > e.g.
> >
> > /etc/alternatives/liblapack2.so -> /usr/lib/liblapack.so
> >
> > The problem is now that ldconfig will be run, and will change these
> > links. In woody, these links are rewritten to their original values,
> > and everything works.
>
> Could you explain what "original value" is?
>
> > In sid, ldconfig rewrites the first link as
> > follows:
> >
> > liblapack.so -> liblapack2.so
> >
> > creating a link circle.
>
> Where is liblapack.so placed? Could you explain us the complete
> symlink path?
>
> BTW,
>
> > > > $ nm -D /usr/lib/liblapack.so
> > > > nm: /usr/lib/liblapack.so: Too many levels of symbolic links
>
> This is Linux kernel VFS limititation, it cannot handle over 5 level
> symlinks. In this case, what behavior do you want to see? Please
> explain in detail step-by-step.
>
> Regards,
> -- gotom
>
>
>
>
--
Camm Maguire camm@enhanced.com
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
Reply to: