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

Reply via email to