Opened 15 years ago

Last modified 15 years ago

#891 closed defect (fixed)

dods INC locations & complie problems w/ DAP 3.5.x

Reported by: cplist@… Owned by: warmerdam
Priority: high Milestone:
Component: default Version: unspecified
Severity: normal Keywords:
Cc:

Description

On 7/15/05, Charlton Purvis <cplist@earthlink.net> wrote:
> Hi, all:
> 
> I am running into problems when I try building OPeNDAP into gdal.  I was 
originally
trying to follow a MapServer wiki post (http://mapserver.gis.umn.edu/cgi-
bin/wiki.pl?DODS_Build),
but that was a bit dated, so I thought I'd get the latest and greatest of both 
worlds.
> 
> I believe I successfully covered my bases w/ the prerequisite libcurl and 
libxml.
> 
> I downloaded libdap-3.5.1.tar.gz from UCAR and followed a:
>   * ./configure --prefix=/usr/local/dods/3.5.1
>   * make
>   * make install
>   * ldconfig
> 
> That all went fine.
> 
> I downloaded gdal-1.2.6.tar.gz from gdal.org and followed a:
>   * ./configure --with-dods-root=/usr/local/dods/3.5.1 --without-python
>   * The configure works fine and shows that DODS support will be 'yes'.
>   * make
>   * Make has problems when it gets to the dods stuff.  It can't find .h's, 
and it looks like the INC gets set incorrectly.  It should be looking 
in /usr/local/dods/3.5.1/include/dap
rather than what I see on the @INC output which 
is /usr/local/dods/3.5.1/include.

Charlton, 

I have committed changes to GDAL in CVS to put both dods_root/include
and dods_root/include/dap into the include path.  I think pushing
stuff down into
a dap subdirectory must be a new convention. 
 
> make -C dods install-obj
> make[2]: Entering directory `/usr/local/download/gdal-1.2.6/frmts/dods'
> /bin/sh ../../libtool --mode=compile g++ -Wall  -O2    -I../../port -
I../../gcore
-I../../alg -I../../ogr -I../../ogr/ogrsf_frmts -I../../port  -
I/usr/local/dods/3.5.1/include
-c -o ../o/dodsdataset2.o dodsdataset2.cpp
>  g++ -Wall -O2 -I../../port -I../../gcore -I../../alg -I../../ogr -
I../../ogr/ogrsf_frmts
-I../../port -I/usr/local/dods/3.5.1/include -c dodsdataset2.cpp  -fPIC -DPIC -
o
../o/.libs/dodsdataset2.o
> dodsdataset2.cpp:50:19: debug.h: No such file or directory
> [followed by more errors]
> 
> So I thought that it was only a matter of an @INC path.  Since I had nothing
to lose I tried both adding the correct path to the INC of the ./configure, 
and 
then I also tried copying the *.h's into what gdal wanted for the heck of it.  
Neither
worked well since I ran into cpp errors which I know zilch about.
> 
> (after copying the *.h's to where gdal could find them)
> make -C dods install-obj
> make[2]: Entering directory `/usr/local/download/gdal-1.2.6/frmts/dods'
> /bin/sh ../../libtool --mode=compile g++ -Wall  -O2    -I../../port -
I../../gcore
-I../../alg -I../../ogr -I../../ogr/ogrsf_frmts -I../../port  -
I/usr/local/dods/3.5.1/include
-c -o ../o/dodsdataset2.o dodsdataset2.cpp
>  g++ -Wall -O2 -I../../port -I../../gcore -I../../alg -I../../ogr -
I../../ogr/ogrsf_frmts
-I../../port -I/usr/local/dods/3.5.1/include -c dodsdataset2.cpp  -fPIC -DPIC -
o
../o/.libs/dodsdataset2.o
> dodsdataset2.cpp: In constructor `DODSDataset::DODSDataset()':
> dodsdataset2.cpp:300: error: no matching function for call to `DDS::DDS()'
> /usr/local/dods/3.5.1/include/DDS.h:254: error: candidates are: DDS::DDS
(const
>    DDS&)

This may be a bit harder.  I'll try and prepare a dap 3.5.1 build and see
what I can figure out.

Change History (2)

comment:1 Changed 15 years ago by warmerdam

The INC issue has been corrected in CVS by causing $dods_root/include
and $dods_root/include/dods to be available in the include path. 

.. working on the other issues with 3.5.x having different DDS constructor
options.

comment:2 Changed 15 years ago by warmerdam

added DEFAULT_BASETYPE_FACTORY define for DDS constructor backward compatibility
with 3.4.x.  Everything seems to be working with dap-3.5.1 with GDAL-cvs now.

Note: See TracTickets for help on using tickets.