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

Re: 20000422: install problems



>To: address@hidden
>From: address@hidden
>Subject: install problems
>Organization: UCAR/Unidata
>Keywords: 200004222053.e3MKr3G17555

Hi Enrique,

> I am having problems installing (compiling) netCDF for
> a new sun ultra-10, in 64 bit mode. It compiles nicely
> in 32 bit mode. It is failing in the cxx subdirectory
> in the compile stage.  Following are items A-F and my
> modified macros.make in the end.  To compile in 64 bit mode
> i use the compiler options -xtarget=ultra2 -xarch=v9a
> (please see my macros.make). 

I just tried compiling netCDF 3.5 on a Sun Ultra-2 with the compiler
options

  CFLAGS="-xtarget=ultra2 -xarch=v9"
  FFLAGS="-xtarget=ultra2 -xarch=v9"
  CXXFLAGS="-xtarget=ultra2 -xarch=v9"

on a SunOS 5.7 system with the WorkShop 5.0 compilers and everything
worked fine.  I don't think this is a difference between you using
"-xarch=v9a" and my using "-xarch=v9", but probably something more
basic, such as whether the appropriate C++ libraries are installed on
your system.  The errors you see indicate some stream I/O methods are
missing, as well as operator new[](unsigned long):

>  /usr/local/SUNWspro/bin/CC -o nctst -O  -xtarget=ultra2 -xarch=v9a  nctst.o 
> libnetcdf_c++.a -L../libsrc -lnetcdf 
>  Undefined                    first referenced
>   symbol                          in file
>  std::basic_ostream<char,std::char_traits<char> 
> >&std::operator<<(std::basic_ostream<char,std::char_traits<char> >&,const 
> char*) nctst.o
>  std::basic_ostream<char,std::char_traits<char> 
> >&std::basic_ostream<char,std::char_traits<char> 
> >::operator<<(std::basic_ostream<char,std::char_traits<char> 
> >&(*)(std::basic_ostream<char,std::char_traits<char> >&)) nctst.o
>  std::basic_ostream<char,std::char_traits<char> 
> >&std::basic_ostream<char,std::char_traits<char> >::put(char) nctst.o
>  std::ostrstream::~ostrstream()          libnetcdf_c++.a(ncvalues.o)
>  std::basic_ostream<char,__type_0>&std::operator<< <std::char_traits<char> 
> >(std::basic_ostream<char,__type_0>&,unsigned char) 
> libnetcdf_c++.a(ncvalues.o)
>  std::basic_ostream<char,std::char_traits<char> 
> >&std::operator<<(std::basic_ostream<char,std::char_traits<char> >&,char) 
> libnetcdf_c++.a(ncvalues.o)
>  void operator delete(void*)                       nctst.o
>  void __Crun::pure_error()         libnetcdf_c++.a(netcdf.o)
>  void*operator new[](unsigned long)                       
> libnetcdf_c++.a(netcdf.o)
>  void __Crun::ex_rethrow_q()       nctst.o
>  std::cerr                      nctst.o
>  [Hint: static member std::cerr should be defined in the program ,see 
> Annotated Reference Manual (ARM) Section 9.4]

>  std::cout                      nctst.o
>  [Hint: static member std::cout should be defined in the program ,see 
> Annotated Reference Manual (ARM) Section 9.4]

Are you able to compile and run other C++ programs with
"-xtarget=ultra2 -xarch=v9a" that use simple stream I/O?  For example

 #include <iostream>
 int main() {
     cout << "Hello\n";
     return 0;
 }

If not, then you'll need to get that fixed before trying to build the
netCDF C++ interface.  Alternatively, if you don't need the C++
interface, you could build without it by specifying no C++ compiler
with CXX="" before running the configure script.

--Russ

_____________________________________________________________________

Russ Rew                                         UCAR Unidata Program
address@hidden                     http://www.unidata.ucar.edu