Re: no .so file on HPUX platform?

2007-01-30 Thread Ralf Wildenhues
Hi Ed,

* Ed Hartnett wrote on Tue, Jan 30, 2007 at 12:11:07AM CET:
 Ralf Wildenhues [EMAIL PROTECTED] writes:
  * Ed Hartnett wrote on Mon, Jan 22, 2007 at 09:31:36PM CET:
  
  I only have this one HPUX system to test on, and it's pretty out of
  date, I suspect. But if I ask them to upgrade it, they'll probably
  just say Nah, let's just get rid of it...
 
  Do you have aCC installed there?  If yes, could you try to build netcdf
  with it?  Over here it's chosen, rather than CC, as C++ compiler.
 
 OK, this gave me the clue to try with with CXX=g++. This allows
 libtool to continue to build shared libraries. But there is still a
 problem, alas!

Which compiler is `cc'?  Is that the bundled one or the ANSI compliant
one?  Because on HP-UX 11.0 HPPA, the bundled one gives me:

$ /usr/ccs/bin/cc -b -o a a.o
| (Bundled) cc: warning 422: Unknown option b ignored.

(see also http://docs.hp.com/en/B2355-90680/cc_bundled.1.html)

whereas the real one has the following in the manpage: (don't be
fooled by the web page: online for HP means on the computer, not on
the interweb)

|-b Generate shared library as output. Compiler generates
|   position-independent code (PIC). Is not compatible with
|   the +ESrel, -dynamic, -noshared options.

and accepts -b.  Version tested is:
$ /opt/ansic/bin/cc -V -c a.c
| ccom: HP92453-01 B.11.X.35098-35101.GP HP C Compiler

whereas the bundled one was:
$ /usr/ccs/bin/cc -V -c a.c
| ccom: HP92453-01 A.11.00.00 HP C (Bundled) Compiler

AFAIR the bundled one is unusable.  Either use the real thing, e.g., by
adjusting PATH so it comes first, or `./configure CC=/ansic/bin/cc';
or simply use gcc.  ;-)

 libtool: link: cc -b -Wl,+h -Wl,libnetcdf.sl.4 -Wl,+b
 -Wl,/usr/local/lib -o .libs/libnetcdf.sl.4.0  .libs/attr.o .l\
 ibs/ncx.o .libs/putget.o .libs/dim.o .libs/error.o .libs/libvers.o
 .libs/nc.o .libs/string.o .libs/v1hpg.o .libs/va\
 r.o .libs/posixio.o   -lc
 cc: warning 422: Unknown option b ignored.
 /usr/ccs/bin/ld: Unsatisfied symbols:
main (Not referenced yet! Probably due to -u option)
 *** Error exit code 1

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: no .so file on HPUX platform?

2007-01-30 Thread Albert Chin
On Mon, Jan 29, 2007 at 04:11:07PM -0700, Ed Hartnett wrote:
 Ralf Wildenhues [EMAIL PROTECTED] writes:
 
  * Ed Hartnett wrote on Mon, Jan 22, 2007 at 09:31:36PM CET:
  
  I only have this one HPUX system to test on, and it's pretty out of
  date, I suspect. But if I ask them to upgrade it, they'll probably
  just say Nah, let's just get rid of it...
 
  Do you have aCC installed there?  If yes, could you try to build netcdf
  with it?  Over here it's chosen, rather than CC, as C++ compiler.
 
 OK, this gave me the clue to try with with CXX=g++. This allows
 libtool to continue to build shared libraries. But there is still a
 problem, alas!
 
 Can anyone tell me why this link is failing?
 
 /bin/sh ../libtool --tag=CC--mode=link cc  -g
 -version-info 4:0:0 -no-undefined   -o libnetcdf.la -rp\
 ath /usr/local/lib attr.lo ncx.lo putget.lo dim.lo error.lo libvers.lo
 nc.lo string.lo v1hpg.lo var.lo   posixio.l\
 o
 libtool: link: cc -b -Wl,+h -Wl,libnetcdf.sl.4 -Wl,+b
 -Wl,/usr/local/lib -o .libs/libnetcdf.sl.4.0  .libs/attr.o .l\
 ibs/ncx.o .libs/putget.o .libs/dim.o .libs/error.o .libs/libvers.o
 .libs/nc.o .libs/string.o .libs/v1hpg.o .libs/va\
 r.o .libs/posixio.o   -lc
 cc: warning 422: Unknown option b ignored.
 /usr/ccs/bin/ld: Unsatisfied symbols:
main (Not referenced yet! Probably due to -u option)

While you set CXX=g++, did you set CC=gcc? If not, then the default
bundled compiler, cc, would be selected. And, it cannot be used to
build shared libraries. So, just add CC=gcc.

-- 
albert chin ([EMAIL PROTECTED])


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: no .so file on HPUX platform?

2007-01-29 Thread Ed Hartnett
Ralf Wildenhues [EMAIL PROTECTED] writes:

 * Ed Hartnett wrote on Mon, Jan 22, 2007 at 09:31:36PM CET:
 
 I only have this one HPUX system to test on, and it's pretty out of
 date, I suspect. But if I ask them to upgrade it, they'll probably
 just say Nah, let's just get rid of it...

 Do you have aCC installed there?  If yes, could you try to build netcdf
 with it?  Over here it's chosen, rather than CC, as C++ compiler.

OK, this gave me the clue to try with with CXX=g++. This allows
libtool to continue to build shared libraries. But there is still a
problem, alas!

Can anyone tell me why this link is failing?

/bin/sh ../libtool --tag=CC--mode=link cc  -g
-version-info 4:0:0 -no-undefined   -o libnetcdf.la -rp\
ath /usr/local/lib attr.lo ncx.lo putget.lo dim.lo error.lo libvers.lo
nc.lo string.lo v1hpg.lo var.lo   posixio.l\
o
libtool: link: cc -b -Wl,+h -Wl,libnetcdf.sl.4 -Wl,+b
-Wl,/usr/local/lib -o .libs/libnetcdf.sl.4.0  .libs/attr.o .l\
ibs/ncx.o .libs/putget.o .libs/dim.o .libs/error.o .libs/libvers.o
.libs/nc.o .libs/string.o .libs/v1hpg.o .libs/va\
r.o .libs/posixio.o   -lc
cc: warning 422: Unknown option b ignored.
/usr/ccs/bin/ld: Unsatisfied symbols:
   main (Not referenced yet! Probably due to -u option)
*** Error exit code 1

Stop.
*** Error exit code 1


-- 
Ed Hartnett  -- [EMAIL PROTECTED]



___
http://lists.gnu.org/mailman/listinfo/libtool


Re: no .so file on HPUX platform?

2007-01-22 Thread Ed Hartnett
Ralf Wildenhues [EMAIL PROTECTED] writes:

 * Ed Hartnett wrote on Fri, Jan 19, 2007 at 03:02:01AM CET:
 Ralf Wildenhues [EMAIL PROTECTED] writes:
  * Ed Hartnett wrote on Wed, Jan 03, 2007 at 05:50:38PM CET:
  
  On our HPUX platform however, no libnetcdf.so file results. Yet the
  build seems to work OK. 
 
  The shared library extension should be '.sl'.  Please show
./libtool --config
 
  and
./libtool --features
 
 Here they are:
 
  ./libtool --config
 
 # Whether or not to build shared libraries.
 build_libtool_libs=no
 [...]

 bash-2.04$ ./libtool --features
 host: hppa2.0w-hp-hpux11.00
 disable shared libraries
 enable static libraries

 So something decided that shared libraries were not ok.  So we need to
 take a closer look what did that.  I tried to build this:

 ftp://ftp.unidata.ucar.edu/pub/netcdf/snapshot/netcdf-daily.tar.gz

 on a hppa2.0w-hp-hpux11.00 system using this:

 ./configure --enable-shared --enable-c-only

 (but with a VPATH setup).  And I get
   enable shared libraries
   enable static libraries

 and I get a nice library 'libsrc/.libs/libnetcdf.sl.4.0'.  'make check'
 succeeds as well.

That's wonderful news!

I only have this one HPUX system to test on, and it's pretty out of
date, I suspect. But if I ask them to upgrade it, they'll probably
just say Nah, let's just get rid of it...

So I say nothing and use what I have. ;-)

 So, we're still at the head scratching stage.  Ed, could you provide
 a build log, including config.log and configure output.  Probably that
 won't even show it either, so if you have time, go and put
   set -x

 in the second line of 'configure', rerun that and upload the output
 somewhere.  If you must post it, be sure to bzip2-pack.


I have put the output here:

ftp://ftp.unidata.ucar.edu/pub/netcdf/snapshot/hpux_shared_issue_configure.txt.gz

Thanks,

Ed


-- 
Ed Hartnett  -- [EMAIL PROTECTED]



___
http://lists.gnu.org/mailman/listinfo/libtool


Re: no .so file on HPUX platform?

2007-01-22 Thread Ralf Wildenhues
* Ed Hartnett wrote on Mon, Jan 22, 2007 at 09:31:36PM CET:
 
 I only have this one HPUX system to test on, and it's pretty out of
 date, I suspect. But if I ask them to upgrade it, they'll probably
 just say Nah, let's just get rid of it...

Do you have aCC installed there?  If yes, could you try to build netcdf
with it?  Over here it's chosen, rather than CC, as C++ compiler.

 I have put the output here:
 
 ftp://ftp.unidata.ucar.edu/pub/netcdf/snapshot/hpux_shared_issue_configure.txt.gz

It shows two things: libtool doesn't support shared libs with CC on
hpux1[01]:
| CC*)
|   # FIXME: insert proper C++ library support
|   ld_shlibs_CXX=no

Second, shared libraries are turned off if either compiler used in the
configuration doesn't support them.  (Whether the latter is a bug or
limitation in Libtool is another question; but I hope we can postpone
that one to another day.)

Good to know this one is settled for now.  Only one major HPUX-related
bug in Libtool to go.

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: no .so file on HPUX platform?

2007-01-18 Thread Ed Hartnett
Ralf Wildenhues [EMAIL PROTECTED] writes:

 Hello Ed,

 * Ed Hartnett wrote on Wed, Jan 03, 2007 at 05:50:38PM CET:
 
 On our HPUX platform however, no libnetcdf.so file results. Yet the
 build seems to work OK. 

 The shared library extension should be '.sl'.  Please show
   ./libtool --config

 and
   ./libtool --features

Here they are:

 ./libtool --config

# Whether or not to build shared libraries.
build_libtool_libs=no

# Assembler program.
AS=as

# DLL creation program.
DLLTOOL=dlltool

# Object dumper program.
OBJDUMP=objdump

# Which release of libtool.m4 was used?
macro_version=2.1a
macro_revision=1.2304

# Whether or not to build static libraries.
build_old_libs=yes

# What type of objects to build.
pic_mode=default

# Whether or not to optimize for fast installation.
fast_install=no

# The host system.
host_alias=
host=hppa2.0w-hp-hpux11.00
host_os=hpux11.00

# The build system.
build_alias=
build=hppa2.0w-hp-hpux11.00
build_os=hpux11.00

# A sed program that does not truncate output.
SED=/usr/bin/sed

# Sed that helps us avoid accidentally triggering echo(1) options like -n.
Xsed=$SED -e 1s/^X//

# A grep program that handles long lines.
GREP=/usr/bin/grep

# An ERE matcher.
EGREP=/usr/bin/grep -E

# A literal string matcher.
FGREP=/usr/bin/grep -F

# A BSD- or MS-compatible name lister.
NM=/usr/ccs/bin/nm -p

# Whether we need soft or hard links.
LN_S=ln -s

# What is the maximum length of a command?
max_cmd_len=262144

# Object file suffix (normally o).
objext=o

# Executable file suffix (normally ).
exeext=

# whether the shell understands unset.
lt_unset=unset

# turn spaces into newlines.
SP2NL=tr \\040 \\012

# turn newlines into spaces.
NL2SP=tr \\015\\012 \\040\\040

# How to create reloadable object files.
reload_flag= -r
reload_cmds=\$LD\$reload_flag -o \$output\$reload_objs

# Method to check whether dependent libraries are shared objects.
deplibs_check_method=file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared 
library

# Command to use when deplibs_check_method == file_magic.
file_magic_cmd=/usr/bin/file

# The archiver.
AR=ar
AR_FLAGS=cru

# A symbol stripping program.
STRIP=strip

# Commands used to install an old-style archive.
RANLIB=ranlib
old_postinstall_cmds=chmod 644 \$oldlib~\$RANLIB \$oldlib
old_postuninstall_cmds=

# A C compiler.
LTCC=cc

# LTCC compiler flags.
LTCFLAGS=-g

# Take the output of nm and produce a listing of raw symbols and C names.
global_symbol_pipe=sed -n -e 's/^.*[   ]\\([BCDEGRST][BCDEGRST]*\\)[   ][  
]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'

# Transform the output of nm in a proper C declaration.
global_symbol_to_cdecl=sed -n -e 's/^T .* \\(.*\\)\$/extern int \\1();/p' -e 
's/^[BCDEGRST]* .* \\(.*\\)\$/extern char \\1;/p'

# Transform the output of nm in a C name address pair.
global_symbol_to_c_name_address=sed -n -e 's/^: \\([^ ]*\\) \$/  {\1\\\, 
(void *) 0},/p' -e 's/^[BCDEGRST]* \\([^ ]*\\) \\([^ ]*\\)\$/  {\\\2\, (void 
*) 2},/p'

# The name of the directory that contains temporary libtool files.
objdir=.libs

# Shell to use when invoking shell scripts.
SHELL=/bin/sh

# An echo program that does not interpret backslashes.
ECHO=print -r

# Used to examine libraries when file_magic_cmd begins with file.
MAGIC_CMD=file

# Must we lock files when doing compilation?
need_locks=no

# Old archive suffix (normally a).
libext=a

# Shared library suffix (normally .so).
shrext_cmds=.sl

# The commands to extract the exported symbol list from a shared archive.
extract_expsyms_cmds=

# Variables whose values should be saved in libtool wrapper scripts and
# restored at link time.
variables_saved_for_relink=PATH SHLIB_PATH 

# Do we need the lib prefix for modules?
need_lib_prefix=no

# Do we need a version for libraries?
need_version=no

# Library versioning type.
version_type=sunos

# Shared library runtime path variable.
runpath_var=

# Shared library path variable.
shlibpath_var=SHLIB_PATH

# Is shlibpath searched before the hard-coded library search path?
shlibpath_overrides_runpath=no

# Format of library name prefix.
libname_spec=lib\$name

# List of archive names.  First name is the real one, the rest are links.
# The last name is the one that the linker finds with -lNAME
library_names_spec=\${libname}\${release}\${shared_ext}\$versuffix 
\${libname}\${release}\${shared_ext}\$major \$libname\${shared_ext}

# The coded name of the library, if different from the real name.
soname_spec=\${libname}\${release}\${shared_ext}\$major

# Command to use after installation of a shared archive.
postinstall_cmds=chmod 555 \$lib

# Command to use after uninstallation of a shared archive.
postuninstall_cmds=

# Commands used to finish a libtool library installation in a directory.
finish_cmds=

# As finish_cmds, except a single script fragment to be evaled but
# not shown.
finish_eval=

# Whether we should hardcode library paths into libraries.
hardcode_into_libs=no

# Compile-time system search path for libraries.

Re: no .so file on HPUX platform?

2007-01-08 Thread Ralf Wildenhues
Hello Ed,

* Ed Hartnett wrote on Wed, Jan 03, 2007 at 05:50:38PM CET:
 
 On our HPUX platform however, no libnetcdf.so file results. Yet the
 build seems to work OK. 

The shared library extension should be '.sl'.  Please show
  ./libtool --config

and
  ./libtool --features

It seems like shared libs were disabled in your configure for some
reason, after the normal libtool setup junk.

Does your package use the file config.rpath (i.e., is it present
anywhere in the source tree)?  There may be a related bug if you do.

Cheers, and a happy New Year,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool