[Gdal-dev] extra qualification 'FITRasterBand::' on member 'FITRasterBand'

Mike Leahy mgleahy at golden.net
Fri Feb 17 19:12:47 EST 2006


Just for kicks, I bypassed the errors below by using --with-cfitsio=no 
in ./configure for the CVS version.  Now I get the following while its 
compiling OGR (which is much further than I was getting before)...

g++ -Wall -O2 -I.. -I../.. -I../../../port -I../../../gcore 
-I../../../alg -I../../../ogr -I../../../ogr/ogrsf_frmts -I/usr/include 
-I/usr/include/xercesc -DHAVE_GEOS=1 -I/usr/include -DOGR_ENABLED -c 
ogrili2layer.cpp  -fPIC -DPIC -o ../o/.libs/ogrili2layer.o
ogrili2layer.cpp: In constructor 'OGRILI2Layer::OGRILI2Layer(const 
char*, OGRSpatialReference*, int, OGRwkbGeometryType, OGRILI2DataSource*)':
ogrili2layer.cpp:76: error: no match for 'operator=' in 
'((OGRILI2Layer*)this)->OGRILI2Layer::listFeatureIt = 0'
/usr/lib/gcc/i386-redhat-linux/4.1.0/../../../../include/c++/4.1.0/bits/stl_list.h:189: 
note: candidates are: std::_List_const_iterator<OGRFeature*>& 
std::_List_const_iterator<OGRFeature*>::operator=(const 
std::_List_const_iterator<OGRFeature*>&)
ogrili2layer.cpp: In member function 'virtual OGRFeature* 
OGRILI2Layer::GetNextFeature()':
ogrili2layer.cpp:135: error: no match for 'operator==' in 
'((OGRILI2Layer*)this)->OGRILI2Layer::listFeatureIt == 0'
/usr/lib/gcc/i386-redhat-linux/4.1.0/../../../../include/c++/4.1.0/bits/stl_list.h:251: 
note: candidates are: bool 
std::_List_const_iterator<_Tp>::operator==(const 
std::_List_const_iterator<_Tp>&) const [with _Tp = OGRFeature*]
make[3]: *** [../o/ogrili2layer.o] Error 1
make[3]: Leaving directory `/data/mapserver/gdal/ogr/ogrsf_frmts/ili'
make[2]: *** [ili-target] Error 2
make[2]: Leaving directory `/data/mapserver/gdal/ogr/ogrsf_frmts'
make[1]: *** [sublibs] Error 2
make[1]: Leaving directory `/data/mapserver/gdal/ogr'
make: *** [ogr-target] Error 2

Mike Leahy wrote:
> Hello again,
> 
> I did in fact find some new problems with 1.3.1, so I switched to the 
> CVS, and that seems to have addressed alot of the stuff I pointed out 
> earlier, so I guess you can ignore my previous message.  However, now I 
> get some new issues, which look somewhat similar, but I'm not sure how I 
> should go about fixing these - I tried imitating the previous solution, 
> but it I'm not having any luck:
> 
> make[2]: Entering directory `/data/mapserver/gdal/frmts/fits'
> /bin/sh ../../libtool --mode=compile g++ -Wall  -O2   -I../../port 
> -I../../gcore -I../../alg -I../../ogr -I../../ogr/ogrsf_frmts 
> -DOGR_ENABLED -c -o ../o/fitsdataset.o fitsdataset.cpp
>  g++ -Wall -O2 -I../../port -I../../gcore -I../../alg -I../../ogr 
> -I../../ogr/ogrsf_frmts -DOGR_ENABLED -c fitsdataset.cpp  -fPIC -DPIC -o 
> ../o/.libs/fitsdataset.o
> fitsdataset.cpp:104:20: error: fitsio.h: No such file or directory
> fitsdataset.cpp:120: error: ISO C++ forbids declaration of 'fitsfile' 
> with no type
> fitsdataset.cpp:120: error: expected ';' before '*' token
> fitsdataset.cpp:130: error: 'fitsfile' has not been declared
> fitsdataset.cpp: In member function 'virtual CPLErr 
> FITSRasterBand::IReadBlock(int, int, void*)':
> fitsdataset.cpp:193: error: 'fitsfile' was not declared in this scope
> fitsdataset.cpp:193: error: 'hFITS' was not declared in this scope
> fitsdataset.cpp:193: error: 'class FITSDataset' has no member named 'hFITS'
> fitsdataset.cpp:218: error: 'fits_read_img' was not declared in this scope
> fitsdataset.cpp: In member function 'virtual CPLErr 
> FITSRasterBand::IWriteBlock(int, int, void*)':
> fitsdataset.cpp:237: error: 'fitsfile' was not declared in this scope
> fitsdataset.cpp:237: error: 'hFITS' was not declared in this scope
> fitsdataset.cpp:237: error: 'class FITSDataset' has no member named 'hFITS'
> fitsdataset.cpp:250: error: 'fits_write_img' was not declared in this scope
> fitsdataset.cpp:256: error: 'NUM_OVERFLOW' was not declared in this scope
> fitsdataset.cpp: In constructor 'FITSDataset::FITSDataset()':
> fitsdataset.cpp:303: error: 'hFITS' was not declared in this scope
> fitsdataset.cpp: In destructor 'virtual FITSDataset::~FITSDataset()':
> fitsdataset.cpp:313: error: 'hFITS' was not declared in this scope
> fitsdataset.cpp:317: error: 'fits_movabs_hdu' was not declared in this 
> scope
> fitsdataset.cpp:318: error: 'fits_write_key_longwarn' was not declared 
> in this scope
> fitsdataset.cpp:351: error: 'fits_update_key_longstr' was not declared 
> in this scope
> fitsdataset.cpp:372: error: 'fits_close_file' was not declared in this 
> scope
> fitsdataset.cpp: At global scope:
> fitsdataset.cpp:382: error: 'CPLErr FITSDataset::Init' is not a static 
> member of 'class FITSDataset'
> fitsdataset.cpp:382: error: 'fitsfile' was not declared in this scope
> fitsdataset.cpp:382: error: 'hFITS_' was not declared in this scope
> fitsdataset.cpp:382: error: expected primary-expression before 'bool'
> fitsdataset.cpp:382: error: initializer expression list treated as 
> compound expression
> fitsdataset.cpp:382: error: expected ',' or ';' before '{' token
> make[2]: *** [../o/fitsdataset.o] Error 1
> make[2]: Leaving directory `/data/mapserver/gdal/frmts/fits'
> make[1]: *** [fits-install-obj] Error 2
> make[1]: Leaving directory `/data/mapserver/gdal/frmts'
> make: *** [frmts-target] Error 2
> 
> 
> Mike
> 
> Frank Warmerdam wrote:
>> Mike Leahy wrote:
>>> Hello list,
>>>
>>> I'm wondering if anyone might recognize the errors I'm getting below 
>>> when I try to compile gdal.  I'm currently running FC5 test 2...I'm 
>>> pretty sure I got the same version to compile fine on FC4, so maybe 
>>> this is an issue with gcc-4.1.0 that is the current release for FC5?  
>>> At any rate, regardless of what options I include in the 
>>> configuration (i.e., disabling/internalizing as many options as 
>>> possible), I get the same result.  I don't see anything recent in the 
>>> list that suggests anyone else has the same problem...
>>>
>>> Any ideas?  Should I just forget about getting this to work on 
>>> FC5/gcc4 for now?
>>>
>>> Thanks in advance for any suggestions,
>>> Mike
>>>
>>> ================================================
>>>
>>> fitdataset.cpp:177: error: extra qualification 'FITRasterBand::' on 
>>> member 'FITRasterBand'
>>> fitdataset.cpp: In static member function 'static GDALDataset* 
>>
>> Mike,
>>
>> Change:
>>     FITRasterBand::FITRasterBand( FITDataset *, int );
>>
>> To:
>>     FITRasterBand( FITDataset *, int );
>>
>> I have committed the same change in CVS.   Let me know if you
>> run into other problems.
>>
>> Best regards,
> _______________________________________________
> Gdal-dev mailing list
> Gdal-dev at lists.maptools.org
> http://lists.maptools.org/mailman/listinfo/gdal-dev
> 



More information about the Gdal-dev mailing list