]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
From Guido Draheim <Guido.Draheim@tek.com>:
authorGary V. Vaughan <gary@gnu.org>
Sun, 5 Aug 2001 11:29:09 +0000 (11:29 +0000)
committerGary V. Vaughan <gary@gnu.org>
Sun, 5 Aug 2001 11:29:09 +0000 (11:29 +0000)
* ltmain.in: Display better and different error messages when
library linkage fails in various ways.

ChangeLog
NEWS
ltmain.in

index c2392e4445a208762f6c58145942887e6945ce26..1f13d56181146b74ba85209b10aaf98d0ac11f6c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2001-08-05  Gary V. Vuaghan  <gary@gnu.org>
+
+       From Guido Draheim <Guido.Draheim@tek.com>:
+       * ltmain.in: Display better and different error messages when
+       library linkage fails in various ways.
+
 2001-08-05  Albert Chin-A-Young <china@thewrittenword.com>
 
        * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Add newline after
diff --git a/NEWS b/NEWS
index a71b4cd69890032d7531052e017fa30e4f73bb32..01c0f46b1eb3b68651ebcd02025931424230e427 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -2,11 +2,13 @@ NEWS - list of user-visible changes between releases of GNU Libtool
 
 New in 1.4d: 2001-??-??; CVS version 1.4c, Libtool team:
 * Help strings display correctly again.
+* Better error messages when library linking fails.
 * Support /lib/w32api in recent cygwin releases.
 * Support cross compilation to mingw.
 * Improved support for linking with gcc on aix4* and aix5*.
 * Improved support for GCC 3.0.
 * Initial support for QNX RTOS, UnixWare 7 and OpenUNIX 8.
+* Bug fixes to the OpenBSD port.
 * Bug fixes.
 \f
 New in 1.4b: 2001-07-09; CVS version 1.4a, Libtool team:
index 1bb891c69e493d46307a01af213defb3a552a525..d824487fec0beae368f26d3a962240f72b5a3627 100644 (file)
--- a/ltmain.in
+++ b/ltmain.in
@@ -1789,10 +1789,12 @@ EOF
          lib)
            if test "$deplibs_check_method" != pass_all; then
              echo
-             echo "*** Warning: This library needs some functionality provided by $deplib."
+             echo "*** Warning: Trying to link with static lib archive $deplib."
              echo "*** I have the capability to make that library automatically link in when"
              echo "*** you link to this library.  But I can only do this if you have a"
-             echo "*** shared version of the library, which you do not appear to have."
+             echo "*** shared version of the library, which you do not appear to have"
+             echo "*** because the file extensions .$libext of this argument makes me believe"
+             echo "*** that it is just a static archive that I should not used here."
            else
              echo
              echo "*** Warning: Linking the shared library $output against the"
@@ -2274,13 +2276,14 @@ EOF
            # Just print a warning and add the library to dependency_libs so
            # that the program can be linked against the static library.
            echo
-           echo "*** Warning: This library needs some functionality provided by $lib."
+           echo "*** Warning: This system can not link to static lib archive $lib."
            echo "*** I have the capability to make that library automatically link in when"
            echo "*** you link to this library.  But I can only do this if you have a"
            echo "*** shared version of the library, which you do not appear to have."
            if test "$module" = yes; then
-             echo "*** Therefore, libtool will create a static module, that should work "
-             echo "*** as long as the dlopening application is linked with the -dlopen flag."
+             echo "*** But as you try to build a module library, libtool will still create "
+             echo "*** a static module, that should work as long as the dlopening application"
+             echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
              if test -z "$global_symbol_pipe"; then
                echo
                echo "*** However, this would only work if libtool was able to extract symbol"
@@ -2876,10 +2879,12 @@ EOF
                else
                  droppeddeps=yes
                  echo
-                 echo "*** Warning: This library needs some functionality provided by $i."
+                 echo "*** Warning: dynamic linker does not accept needed library $i."
                  echo "*** I have the capability to make that library automatically link in when"
                  echo "*** you link to this library.  But I can only do this if you have a"
-                 echo "*** shared version of the library, which you do not appear to have."
+                 echo "*** shared version of the library, which I believe you do not have" 
+                 echo "*** because a test_compile did reveal that the linker did not use it for"
+                 echo "*** its dynamic dependency list that programs get resolved with at runtime."
                fi
              else
                newdeplibs="$newdeplibs $i"
@@ -2906,10 +2911,12 @@ EOF
                  else
                    droppeddeps=yes
                    echo
-                   echo "*** Warning: This library needs some functionality provided by $i."
+                   echo "*** Warning: dynamic linker does not accept needed library $i."
                    echo "*** I have the capability to make that library automatically link in when"
                    echo "*** you link to this library.  But I can only do this if you have a"
-                   echo "*** shared version of the library, which you do not appear to have."
+                   echo "*** shared version of the library, which you do not appear to have"
+                   echo "*** because a test_compile did reveal that the linker did not use this one"
+                   echo "*** as a dynamic dependency that programs can get resolved with at runtime."
                  fi
                else
                  droppeddeps=yes
@@ -2966,10 +2973,17 @@ EOF
              if test -n "$a_deplib" ; then
                droppeddeps=yes
                echo
-               echo "*** Warning: This library needs some functionality provided by $a_deplib."
+               echo "*** Warning: linker path does not have real file for library $a_deplib."
                echo "*** I have the capability to make that library automatically link in when"
                echo "*** you link to this library.  But I can only do this if you have a"
-               echo "*** shared version of the library, which you do not appear to have."
+               echo "*** shared version of the library, which you do not appear to have"
+               echo "*** because I did check the linker path looking for a file starting"
+               if test -z "$potlib" ; then
+                 echo "*** with $libname but no candidates were found. (...for file magic test)"
+               else
+                 echo "*** with $libname and none of the candidates passed a file format test"
+                 echo "*** using a file magic. Last file checked: $potlib"
+               fi
              fi
            else
              # Add a -L argument.
@@ -2988,6 +3002,7 @@ EOF
              for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
                potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
                for potent_lib in $potential_libs; do
+                 potlib="$potent_lib" # see symlink-check above in file_magic test
                  if eval echo \"$potent_lib\" 2>/dev/null \
                      | sed 10q \
                      | egrep "$match_pattern_regex" > /dev/null; then
@@ -3000,10 +3015,17 @@ EOF
              if test -n "$a_deplib" ; then
                droppeddeps=yes
                echo
-               echo "*** Warning: This library needs some functionality provided by $a_deplib."
+               echo "*** Warning: linker path does not have real file for library $a_deplib."
                echo "*** I have the capability to make that library automatically link in when"
                echo "*** you link to this library.  But I can only do this if you have a"
-               echo "*** shared version of the library, which you do not appear to have."
+               echo "*** shared version of the library, which you do not appear to have"
+               echo "*** because I did check the linker path looking for a file starting"
+               if test -z "$potlib" ; then
+                 echo "*** with $libname but no candidates were found. (...for regex pattern test)"
+               else
+                 echo "*** with $libname and none of the candidates passed a file format test"
+                 echo "*** using a regex pattern. Last file checked: $potlib"
+               fi
              fi
            else
              # Add a -L argument.