[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

BUG: libtool-1.9f and libtool-1.5.18: "install: you must specify a desti

From: Juergen Leising
Subject: BUG: libtool-1.9f and libtool-1.5.18: "install: you must specify a destination"
Date: Wed, 6 Jul 2005 09:03:49 +0200
User-agent: Mutt/


The following error message appears due to a bug in
func_mode_install ():

/bin/sh ../../../libtool --mode=install cp -f  'libeic.la'
libtool: install: you must specify a destination
libtool: install: Try `libtool --help --mode=install' for more

[the first two lines were actually one line]

As one can see, there has been given a destination, so it is not
the fault of automake/autoconf/make, because it is pretty much
legitimate to use both "cp -f" and "install -c".

The reason for this error is, that the -f of "cp" does NOT expect
any further arguments, as opposed to bsd's "install". cp -f rather means
"force" and enforces overwriting of any existing files. This is at least 
true for both of the versions of "cp" under linux (fileutils-4.1) and under 
freebsd-4.6 (and under irix, iirc). Therefore libtool's treatment of -f 
in func_mode_install with "cp" MUST NOT be


However, at least bsd's "install" does know the option -f
(opposedly to the install used under linux) and does require 
further arguments. So a short distinction will be necessary. 
My workaround for this is in libtool (around line 2442) rsp.
ltmain.sh (line 2053) in func_mode_install ():


      case $arg in
      -d) isdir=yes ;;
      -f) if test "$install_prog" = "cp";
                then prev=
          fi ;;
      -g) prev="-g" ;;
      -m) prev="-m" ;;
      -o) prev="-o" ;;


instead of the uniform

        -f) prev="-f";;

Many thanks

Juergen Leising


reply via email to

[Prev in Thread] Current Thread [Next in Thread]