Menu ▾ ▴

#83 gcc 4.x failure

open
nobody
None
5
2014-08-15
2008-07-04
No

I'm having trouble compiling either the latest release or the CVS head using a modern system, namely Debian lenny, with GCC 4.3.1. There are a variety of compiler errors, like the below.

--------------------------

...
make[4]: Entering directory `/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX'
g++ -M -w -DMAKEDEPEND -Dcplusplus_2_1 -Wno-deprecated -I/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/.. -I/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../.. -I/home/barak/src/ivtools/up/ivtools-1.2/src -I/home/barak/src/ivtools/up/ivtools-1.2/src/include -I/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd -I -I/usr/local/include -UHAVE_ACE /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../*.c >Makefile.depend
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../align.c:49:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../catalog.c:65:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../catalog.c:72:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/fstream.h:3:26: error: fstream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../catcmds.c:48:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../catcmds.c:50:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/fstream.h:3:26: error: fstream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../command.c:44:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../connector.c:45:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../csolver.c:47:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../edit.c:47:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../ellipse.c:52:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../geomobjs.c:38:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../grcomp.c:58:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../gvupdater.c:40:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../line.c:54:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../link.c:58:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../macro.c:35:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../pad.c:55:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../pin.c:62:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../polygon.c:45:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../psview.c:43:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../rastercomp.c:40:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../rect.c:55:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../selection.c:39:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../slot.c:63:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../spline.c:45:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../statevars.c:37:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
In file included from /home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/stream.h:1,
from /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw/LINUX/../stencilcomp.c:40:
/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd/iostream.h:4:27: error: iostream.h: No such file or directory
make[4]: *** [depend] Interrupt
make[3]: *** [depend] Interrupt
make[2]: *** [depend] Interrupt
make[1]: *** [depend] Interrupt
make: *** [all] Interrupt

Or after fixing to <iostream>,

make[4]: Entering directory `/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX'
g++ -DUnidrawCommon -gdwarf-2 -O2 -fPIC -Dcplusplus_2_1 -Wno-deprecated -I/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX/.. -I/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX/../.. -I/home/barak/src/ivtools/up/ivtools-1.2/src -I/home/barak/src/ivtools/up/ivtools-1.2/src/include -I/home/barak/src/ivtools/up/ivtools-1.2/src/include/ivstd -I -c /home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX/../component.c
/usr/lib/gcc/i486-linux-gnu/4.3.1/../../../../lib/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
/tmp/cc2Pkwjg.o: In function `ivComponent::Detach(ivComponentView*)':
/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX/../component.c:78: undefined reference to `ivUList::Delete(void*)'
/tmp/cc2Pkwjg.o: In function `ivComponent':
/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX/../component.c:43: undefined reference to `ivUList::ivUList(void*)'
/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX/../component.c:43: undefined reference to `ivUList::ivUList(void*)'
/tmp/cc2Pkwjg.o: In function `ivComponent::Attach(ivComponentView*)':
/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX/../component.c:73: undefined reference to `ivUList::ivUList(void*)'
/home/barak/src/ivtools/up/ivtools-1.2/src/Unidraw-common/LINUX/../component.c:73: undefined reference to `ivUList::Prepend(ivUList*)'
collect2: ld returned 1 exit status
make[4]: *** [component.o] Error 1

Discussion

  • Scott Johnston

    Scott Johnston - 2008-07-05

    Logged In: YES
    user_id=406
    Originator: NO

    This seems to be the same problem as reported for Debian bug 461680 (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=461680). There is a patch attached to that bug (http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=14;filename=ivtools_1.1.3-5.4.gcc-4.3_support.patch;att=1;bug=461680) I've incorporated into the latest source tree, which should be published this month some time. I'd appreciate if anyone could confirm whether this patch does or does not solve the gcc-4.3.1 problem.

    Scott Johnston

     
  • Barak A. Pearlmutter

    Logged In: YES
    user_id=592824
    Originator: YES

    The Debian patch is for ivtools-1.1, the issue above is for ivtools-1.2. It looks like the patch has been applied here for 1.1; at least, I didn't see it when I did a cvs update on the 1.2 sources I have checked out. I have not checked if the patch can be easily ported to 1.2.

     
  • Scott Johnston

    Scott Johnston - 2008-07-07

    Logged In: YES
    user_id=406
    Originator: NO

    I successfully applied most of that patch to the latest source tree I have, so I think it will apply to any ivtools-1.2 source tree. It does the right kind of stuff, making up for the broken backward compatibility of gcc-4.3.1 iostreams (why didn't they wait until gcc-5.0?). I just haven't had the time to verify this for myself. Alternately I plan on releasing a new version of ivtools within the next two weeks, so you could wait until then to try that copy on gcc-4.3.1 (and I'll be updating the cvs sources at the same time).

     
  • Barak A. Pearlmutter

    These issues are addressed in patches applied in building the Debian ivtools package.
    See git://github.com/barak/ivtools.git

     

Log in to post a comment.