Subject: Re: libtool problems on Solaris 10?
To: None <tech-pkg@netbsd.org, pkgsrc-users@netbsd.org>
From: Jake Kupersmith <jakerosoft@gmail.com>
List: pkgsrc-users
Date: 10/06/2006 20:23:41
Here are diff's of the new and old copies of libtool ... both
packages are libtool-base-1.5.22nb3 but differ significantly, I
beleive this to be the cause of the problem. share/libtool/ltmain.sh
also differs slightly..
--- /export/home/jkupersm/tmp/libtool-test/bad/bin/libtool Fri
Oct 6 11:52:22 2006
+++ /export/home/jkupersm/tmp/libtool-test/good/bin/libtool Thu
Jul 27 14:31:20 2006
@@ -82,13 +82,13 @@
AR_FLAGS="cru"
# A C compiler.
-LTCC="gcc"
+LTCC="cc"
# LTCC compiler flags.
-LTCFLAGS="-O -xtarget=ultra2 -xarch=v8plusa -I/usr/include"
+LTCFLAGS="-xtarget=ultra2 -xarch=v8plusa -I/usr/include"
# A language-specific compiler.
-CC="gcc"
+CC="cc"
# Is the compiler the GNU C compiler?
with_gcc=
@@ -3630,7 +3630,7 @@
age="0"
;;
irix|nonstopux)
- current=`expr $number_major + $number_minor`
+ current=`expr $number_major + $number_minor - 1`
age="$number_minor"
revision="$number_minor"
;;
@@ -7320,7 +7320,7 @@
build_old_libs=yes
# Whether or not to add -lc for building shared libraries.
-build_libtool_need_lc=no
+build_libtool_need_lc=yes
# Whether or not to disallow shared libs when runtime libs are static
allow_libtool_libs_with_static_runtimes=no
@@ -7346,13 +7346,13 @@
AR_FLAGS="cru"
# A C compiler.
-LTCC="gcc"
+LTCC="cc"
# LTCC compiler flags.
-LTCFLAGS="-O -xtarget=ultra2 -xarch=v8plusa -I/usr/include"
+LTCFLAGS="-xtarget=ultra2 -xarch=v8plusa -I/usr/include"
# A language-specific compiler.
-CC="g++"
+CC="CC"
# Is the compiler the GNU C compiler?
with_gcc=no
@@ -7392,7 +7392,7 @@
reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs"
# How to pass a linker flag through the compiler.
-wl=""
+wl="-Qoption ld "
# Object file suffix (normally "o").
objext="o"
@@ -7407,7 +7407,7 @@
exeext=""
# Additional compiler flags for building library objects.
-pic_flag=" -DPIC"
+pic_flag=" -KPIC -DPIC"
pic_mode=default
# What is the maximum length of a command?
@@ -7444,7 +7444,7 @@
export_dynamic_flag_spec=""
# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=""
+whole_archive_flag_spec="\${wl}-z \${wl}allextract\`for conv in
\$convenience\\\"\\\"; do test -n \\\"\$conv\\\" &&
new_convenience=\\\"\$new_convenience,\$conv\\\"; done; \$echo
\\\"\$new_convenience\\\"\` \${wl}-z \${wl}defaultextract"
# Compiler flag to generate thread-safe objects.
thread_safe_flag_spec=""
@@ -7464,7 +7464,7 @@
# Commands used to build and install an old-style archive.
RANLIB="ranlib"
-old_archive_cmds="\$AR \$AR_FLAGS
\$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib"
+old_archive_cmds="\$CC -xar -o \$oldlib \$oldobjs"
old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$oldlib"
old_postuninstall_cmds=""
@@ -7475,8 +7475,9 @@
old_archive_from_expsyms_cmds=""
# Commands used to build and install a shared archive.
-archive_cmds=""
-archive_expsym_cmds=""
+archive_cmds="\$CC -G\${allow_undefined_flag} -h\$soname -o \$lib
\$predep_objects \$libobjs \$deplibs \$postdep_objects
\$compiler_flags"
+archive_expsym_cmds="\$echo \\\"{ global:\\\" > \$lib.exp~cat
\$export_symbols | \$SED -e \\\"s/\\\\(.*\\\\)/\\\\1;/\\\" >>
\$lib.exp~\$echo \\\"local: *; };\\\" >> \$lib.exp~
+ \$CC -G\${allow_undefined_flag} \${wl}-M \${wl}\$lib.exp
-h\$soname -o \$lib \$predep_objects \$libobjs \$deplibs
\$postdep_objects \$compiler_flags~\$rm \$lib.exp"
postinstall_cmds="chmod +x \$lib"
postuninstall_cmds=""
@@ -7502,7 +7503,7 @@
# Dependencies to place after the objects being linked to create a
# shared library.
-postdeps=""
+postdeps="-lCstd -lCrun"
# The library search path used internally by the compiler when linking
# a shared library.
@@ -7518,7 +7519,7 @@
allow_undefined_flag=""
# Flag that forces no undefined symbols.
-no_undefined_flag=""
+no_undefined_flag=" -zdefs"
# Commands used to finish a libtool library installation in a directory.
finish_cmds=""
@@ -7545,7 +7546,7 @@
shlibpath_overrides_runpath=yes
# How to hardcode a shared library path into an executable.
-hardcode_action=unsupported
+hardcode_action=immediate
# Whether we should hardcode library paths into libraries.
hardcode_into_libs=yes
@@ -7552,7 +7553,7 @@
# Flag to hardcode $libdir into a binary during linking.
# This must work even if $libdir does not exist.
-hardcode_libdir_flag_spec=""
+hardcode_libdir_flag_spec="-R\$libdir"
# If ld is used when linking, flag to hardcode $libdir into
# a binary during linking. This must work even if $libdir does
@@ -7572,7 +7573,7 @@
# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
# the resulting binary.
-hardcode_shlibpath_var=unsupported
+hardcode_shlibpath_var=no
# Set to yes if building a shared library automatically hardcodes DIR
into the library
# and all subsequent libraries and executables linked against it.
@@ -7583,7 +7584,7 @@
variables_saved_for_relink="PATH LD_LIBRARY_PATH "
# Whether libtool must link a program against all its dependency libraries.
-link_all_deplibs=unknown
+link_all_deplibs=yes
# Compile-time system search path for libraries
sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
@@ -7651,10 +7652,10 @@
AR_FLAGS="cru"
# A C compiler.
-LTCC="gcc"
+LTCC="cc"
# LTCC compiler flags.
-LTCFLAGS="-O -xtarget=ultra2 -xarch=v8plusa -I/usr/include"
+LTCFLAGS="-xtarget=ultra2 -xarch=v8plusa -I/usr/include"
# A language-specific compiler.
CC="f77"
--- /export/home/jkupersm/tmp/libtool-test/bad/share/libtool/ltmain.sh
Fri Oct 6 11:52:23 2006
+++ /export/home/jkupersm/tmp/libtool-test/good/share/libtool/ltmain.sh
Thu Jul 27 14:31:21 2006
@@ -3280,7 +3280,7 @@
age="0"
;;
irix|nonstopux)
- current=`expr $number_major + $number_minor`
+ current=`expr $number_major + $number_minor - 1`
age="$number_minor"
revision="$number_minor"
;;
On 10/6/06, Jake Kupersmith <jakerosoft@gmail.com> wrote:
> Hi, I have recently been having problems bulding devel/ncurses on two
> separate machines running Solaris 10 (one SPARC, one x86). They are
> bothing having the exact same problem and I suspect libtool.