Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] make install (libtool) failure on Solaris 10 (1.5rc5 and 1.4.3rc1)
From: Ralf Wildenhues (Ralf.Wildenhues_at_[hidden])
Date: 2010-08-26 01:29:17


Hi Paul,

* Paul H. Hargrove wrote on Thu, Aug 26, 2010 at 05:37:23AM CEST:
> This has got to be the stupidest failure I have ever seen!
>
> $ make install
> [...]
> make[3]: Entering directory
> `/export/home/phargrov/openmpi-1.5rc5/BLD-gcc-vt/ompi'
> test -z "/usr/local/pkg/ompi-1.5rc5/lib" || ../../config/install-sh
> -c -d "/usr/local/pkg/ompi-1.5rc5/lib"
> /bin/bash ../libtool --mode=install ../../config/install-sh -c
> libmpi.la '/usr/local/pkg/ompi-1.5rc5/lib'
> libtool: install: ../../config/install-sh -c .libs/libmpi.so.0.0.2
> /usr/local/pkg/ompi-1.5rc5/lib/libmpi.so.0.0.2
> libtool: install: (cd /usr/local/pkg/ompi-1.5rc5/lib && { ln -s -f
> libmpi.so.0.0.2 libmpi.so.0 || { rm -f libmpi.so.0 && ln -s
> libmpi.so.0.0.2 libmpi.so.0; }; })
> Usage: ln [-f] [-s] f1
> ln [-f] [-s] f1 f2
> ln [-f] [-s] f1 ... fn d1
> [...]
>
> This is due to an incomprehensibly stupid "ln" that cares about the
> order of the "-s" and "-f" options:
>
> $ rm -f b; touch a; ln -f -s a b
> $ rm -f b; touch a; ln -s -f a b
> Usage: ln [-f] [-s] f1
> ln [-f] [-s] f1 f2
> ln [-f] [-s] f1 ... fn d1
>
> $ which ln
> /usr/ucb/ln
>
> $ uname -a
> SunOS lem.lbl.gov 5.10 s10_69 sun4u sparc SUNW,Ultra-5_10

I'll fix that option order in libtool, but I don't see how it could have
caused a failed install for you, because we explicitly do
  ln -s -f A B || { rm -f B && ln -s A B; }

Please also note that this ln does not do the right thing with -f -s
when the target file already exists:

$ /usr/ucb/ln -f -s a b; echo $?
ln: b: File exists
1

Generally, having /usr/ucb early in $PATH on Solaris doesn't seem ideal,
the Autoconf manual describes several issues with tools in that
directory.

Cheers, and thanks for the report,
Ralf