[gdal-dev] GDAL 1.5.2 RC3 and HDF

Andrew Brooks arb at sat.dundee.ac.uk
Fri May 30 12:43:41 EDT 2008


Hi

Please don't use RC3 as final 1.5.2 until the HDF code is fixed.  It is broken at
the moment and simply won't compile with the current HDF4 and hdf5 libraries.  Both
HDF APIs have changed and GDAL no longer compiles.  See below for my changes (not
necessary correct, especially the use of H5Gopen1, but at least it compiles!).

Andrew

% find gdal-1.5.2rc3 | xargs grep -n 'XXX.arb'
gdal-1.5.2rc3/frmts/hdf4/hdf4dataset.cpp:576:    char   szAttrName[H4_MAX_NC_NAME]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4dataset.cpp:743:   poDS->iSubdatasetType = HS_UNKNOWN; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4dataset.cpp:754:    int32  aiDimSizes[H4_MAX_VAR_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4dataset.h:54:    HS_UNKNOWN // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:91:    int32       aiDimSizes[H4_MAX_VAR_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:205:    int32               aiStart[H4_MAX_NC_DIMS], aiEdges[H4_MAX_NC_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:444:    int32               aiStart[H4_MAX_NC_DIMS], aiEdges[H4_MAX_NC_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1100:        int32       aiDimSizes[H4_MAX_VAR_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1103:        int32 aiStart[H4_MAX_NC_DIMS], aiEdges[H4_MAX_NC_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1459:        int32       aiDimSizes[H4_MAX_VAR_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1466:                char    szAttrName[H4_MAX_NC_NAME]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1569:        int32       aiDimSizes[H4_MAX_VAR_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1576:                char    szAttrName[H4_MAX_NC_NAME]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1624:        int32       aiDimSizes[H4_MAX_VAR_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1693:    int32   aiDimSizes[H4_MAX_VAR_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:1909:        int32   iStart[H4_MAX_NC_DIMS], iEdges[H4_MAX_NC_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:2293:        poDS->iSubdatasetType = HS_UNKNOWN; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:2614:          memset( poDS->aiDimSizes, 0, sizeof(int32) * H4_MAX_VAR_DIMS ); // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:2625:              char  szAttrName[H4_MAX_NC_NAME]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:2737:            char    szAttrName[H4_MAX_NC_NAME]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf4imagedataset.cpp:3034:    int32               aiDimSizes[H4_MAX_VAR_DIMS]; // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf-eos/GDapi.c:10873:    int32           dims[H4_MAX_VAR_DIMS]; /* Field/SDS dimensions */ // XXX arb
gdal-1.5.2rc3/frmts/hdf4/hdf-eos/SWapi.c:11415:    int32           dims[H4_MAX_VAR_DIMS]; /* Field/SDS dimensions */ // XXX arb
gdal-1.5.2rc3/frmts/hdf5/hdf5dataset.cpp:243:    poDS->hGroupID = H5Gopen1( poDS->hHDF5, "/" ); // XXX arb
gdal-1.5.2rc3/frmts/hdf5/hdf5dataset.cpp:442:       if( ( hGroupID = H5Gopen1( hHDF5, pszObjName )) == -1  ) { // XXX arb
gdal-1.5.2rc3/frmts/hdf5/hdf5dataset.cpp:471:       if( ( hDatasetID = H5Dopen1( hHDF5, pszObjName )) == -1  ) { // XXX arb
gdal-1.5.2rc3/frmts/hdf5/hdf5dataset.cpp:676:   hGroupID = H5Gopen1( hHDF5, poH5Object->pszPath); // XXX arb
gdal-1.5.2rc3/frmts/hdf5/hdf5dataset.cpp:678:       ret = H5Aiterate1( hGroupID, NULL, // XXX arb
gdal-1.5.2rc3/frmts/hdf5/hdf5dataset.cpp:687:   hDatasetID =  H5Dopen1(hHDF5, poH5Object->pszPath); // XXX arb
gdal-1.5.2rc3/frmts/hdf5/hdf5dataset.cpp:690:       ret = H5Aiterate1( hDatasetID, NULL, // XXX arb
gdal-1.5.2rc3/frmts/hdf5/hdf5dataset.cpp:872:    hGroupID = H5Gopen1( hHDF5, "/" );  // XXX arb
%


More information about the gdal-dev mailing list