Opened 18 years ago

Last modified 18 years ago

#1178 closed defect (fixed)

gcc 4.1 STL build problem with ILI driver

Reported by: warmerdam Owned by: pka@…
Priority: high Milestone:
Component: OGR_SF Version: unspecified
Severity: normal Keywords:
Cc: zeekec@…

Description

A build attempt on AMD 64 Fedora Core 4 with Xerces 2.7 fails thusly
for "che" in IRC.


 g++ -Wall -O2 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -I.. -I../..
-I/home/che/rpmbuild/BUILD/gdal-1.3.2/port
-I/home/che/rpmbuild/BUILD/gdal-1.3.2/gcore
-I/home/che/rpmbuild/BUILD/gdal-1.3.2/alg
-I/home/che/rpmbuild/BUILD/gdal-1.3.2/ogr
-I/home/che/rpmbuild/BUILD/gdal-1.3.2/ogr/ogrsf_frmts -I/usr/include
-I/usr/include/xercesc -DHAVE_GEOS=1 -I/usr/include -DOGR_ENABLED
-I/home/che/rpmbuild/BUILD/gdal-1.3.2/port -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/x86_64-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/x86_64-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 `/home/che/rpmbuild/BUILD/gdal-1.3.2/ogr/ogrsf_frmts/ili'
make[2]: *** [ili-target] Error 2
make[2]: Leaving directory `/home/che/rpmbuild/BUILD/gdal-1.3.2/ogr/ogrsf_frmts'
make[1]: *** [sublibs] Error 2
make[1]: Leaving directory `/home/che/rpmbuild/BUILD/gdal-1.3.2/ogr'
make: *** [ogr-target] Error 2

I attempted a build with gcc 3.4 and Xerces 2.7 on my Ubuntu 5.1 AMD64
system and it went fine.  Based on the messages I am guessing some sort
of incompatibility with newer G++ STLs.

Change History (3)

comment:1 by warmerdam, 18 years ago

Pirmin, 

Can you look into this?

comment:2 by zeekec@…, 18 years ago

I'm seeing this on my Gentoo system.  It appears to be trying to assign/compare
an integer to an interator.


emerge --info
Portage 2.1_rc2-r3 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4-r3,
2.6.16-gentoo-r8 i686)
=================================================================
System uname: 2.6.16-gentoo-r8 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
Gentoo Base System version 1.12.0
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r1
dev-util/confcache:  0.4.2-r1
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r5
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -mtune=prescott -march=prescott -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-O2 -mtune=prescott -march=prescott -pipe"
DISTDIR="/home/gentoo/portage/distfiles"
FEATURES="autoconfig candy ccache confcache distlocks metadata-transfer
parallel-fetch sandbox sfperms strict userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://gentoo.mirrors.pair.com/
http://distro.ibiblio.org/pub/linux/distributions/gentoo/
http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/
http://gentoo.chem.wisc.edu/gentoo/ http://gentoo.osuosl.org/"
LINGUAS="en"
MAKEOPTS="-j2"
PKGDIR="/home/gentoo/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/home/gentoo/tmp"
PORTDIR="/home/gentoo/portage"
PORTDIR_OVERLAY="/home/gentoo/local/portage /home/gentoo/local/layman/vmware
/home/gentoo/local/layman/science"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="x86 7zip X X509 Xaw3d a52 aac aalib acl acpi activefilter ada aim aio akode
alsa amarok amd amr aotuv apache apache2 apm arts artswrappersuid artworkextra
asf asm asterisk async atlas auctex audiofile authdaemond automount
bash-completion bcmath bcp bdf berkdb binfilter bitmap-fonts bjam bl blas
blender-game bonobo boo branding bzip2 c++ cairo calendar cap caps ccache cdda
cddb cdf cdio cdparanoia cdr cdrom cgi chm clanJavaScript clanVoice cli clisp
cmucl commercial corba cracklib crosscompile crypt cscope css ctype cups curl
curlwrappers cvs cvsgraph daap dbm dbus dbx dcc debugger dga dhcp dio directfb
discard-path djvu dmi dnd dpms dri dts dv dvd dvdr dvdread dvi dynagraph ecc
editor edl eds effects emboss emoticon encode enscript epson erandom esd
examples exif expat exscalibar extraicons extramodules fam fame fastbuild
fastcgi fat fbcon fbdev fbsplash festival ffmpeg fftw finger firefox fits flac
flash flatfile fltk font-server fontconfig foomaticdb force-cgi-redirect fortran
fpx freetts ftp fuse gb gcc-libffi gcl gd gdal gdbm geoip geos ggi gif gimp
gimpprint ginac gitsendemail gkrellm glade glep glgd glitz glut glx gml gmp
gmtfull gmthigh gmtsuppl gmttria gnome gnome-print gnomedb gnuplot gnutls
gpg2-experimental gpgme gphoto2 gpm gps graphviz grass gs gsl gssapi gstreamer
gstreamer010 gtk gtk2 gtkhtml guile gzip hal haskell hddtemp hdf hdf5 hfs
high-ints hlapi hou hpn html httpd i8x0 iconv icq id3 ide idea idn image
imagemagick imap imlib imlib2 inifile inkjar input_devices_jamstudio
input_devices_keyboard input_devices_mouse insecure-drivers insecure-savers ipv6
isdnlog itcl jack jai java javacomm javascript jbig jce jikes jimi jit jpeg
jpeg2k junit jython kcal kde kdeenablefinal kdepim kdexdeltas kqemu ladcca lame
lapack largeterminal latex lcms libcaca libclamav libdsk libg++ libgda
libsamplerate libwww live lm_sensors logitech-mouse logrotate logwatch lzo lzw
mad mail maildir mailwrapper mapeditor maps math matroska mbrola md5sum mhash
mikmod mime ming mixer mjpeg mmap mmx mmxext mng mod modplug mopac7 motif
moznocompose moznoirc moznomail mozsha1 mozsvg mp3 mp4 mp4live mpeg mpeg2
mplayer mpqc multiprocess multitarget musepack music musicbrainz mysql nas
ncurses net netcdf network new-login nfs nls no-old-linux nocd nolvm1 nowin nptl
nptlonly nsplugin ntfs ntlm numarray numeric oav ocaml octave offensive ofx ogdi
ogg openal openbabel openexr opengl osc oss pager pam parse-clocks pascal patch
patented pcntl pcre pdf perl php physfs pic player plotutils plugin png pnp pop
portaudio postfix povray ppds pppd print pyste python qemu-fast qhull qt
quicktime quotas quotes rar rdesktop readline real reflection remix rle rogue
rpc rrdtool rss rtc rtsp ruby samba sasl sbcl scanner scp screen sdk sdl session
sftp shared sharedext sharedmem shorten shout skins slp smime smp sndfile
softmmu sou sounds speedo speex spell spl sql sqlite sse sse-filters sse2 ssl
stencil-buffer stream subject-rewrite subp subtitles subversion suid svg svgz
svn-mirror swat symlink sysfs syslog sysvipc szip t1lib tcltk tcpd test tetex
tga theora thesaurus threads tidy tiff timidity tokenizer toolbar tools
transcode truetype truetype-fonts type1 type1-fonts ucs2 ucs4 udev unicode
urandom usb userlocales utf8 uudeview v4l v4l2 vcd vcdimager vfat
video_cards_i810 videos vidix vim vim-pager vim-with-x virus-scan visualization
vlm vnc voice vorbis vorbis-psy webdav win32codecs wmf wordperfect wv wxwindows
x264 xanim xatrix xcomposite xface xforms xine xinetd xml xmldoclet xmms xorg
xosd xpm xprint xscreensaver xsl xslt xtended xv xvid xvmc yv12 zip zlib
elibc_glibc input_devices_linuxinput input_devices_ps2mouse
input_devices_serialmouse kernel_linux linguas_en userland_GNU video_cards_i830"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS,
PORTAGE_RSYNC_EXTRA_OPTS

comment:3 by warmerdam, 18 years ago

I believe Pirmin has fixed this in CVS despite the lack of a message and
closing.  I'll do it. 


Note: See TracTickets for help on using tickets.