www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - gcc 4 not supported by std/etc/c/stlsoft

reply Ben Hinkle <Ben_member pathlink.com> writes:
When I try to rebuild phobos for dmd.129 on linux I get an error in etc/c

make[1]: Entering directory `/home/bhinkle/dmd/src/phobos/etc/c/recls'
g++ -Wall  -O4 -mcpu=i686  -DNDEBUG -DUNIX -D_M_IX86 -c -I. -I../stlsoft
-orecls_api.o recls_api.cpp
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
In file included from ../stlsoft/stlsoft_nulldef.h:75,
from recls_api.cpp:68:
./stlsoft/stlsoft.h:382:4: error: #error GNU C/C++ compilers whose major
version is not 2 or 3 are not currently supported by the STLSoft libraries
make[1]: *** [recls_api.o] Error 1
make[1]: Leaving directory `/home/bhinkle/dmd/src/phobos/etc/c/recls'
make: *** [etc/c/recls/recls_api.o] Error 2

My gcc info:

[phobos]$ gcc -v
Using built-in specs.
Target: i386-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-libgcj-multifile
--enable-languages=c,c++,objc,java,f95,ada --enable-java-awt=gtk
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre
--host=i386-redhat-linux
Thread model: posix
gcc version 4.0.0 20050519 (Red Hat 4.0.0-8)

I looked at stlsoft.h and it only has ifdefs for gcc 2 and 3. I added an elif
clause to accept gcc 4 and got it back on track.
Aug 13 2005
parent reply James Dunne <james.jdunne gmail.com> writes:
In article <ddlomk$jek$1 digitaldaemon.com>, Ben Hinkle says...
When I try to rebuild phobos for dmd.129 on linux I get an error in etc/c

make[1]: Entering directory `/home/bhinkle/dmd/src/phobos/etc/c/recls'
g++ -Wall  -O4 -mcpu=i686  -DNDEBUG -DUNIX -D_M_IX86 -c -I. -I../stlsoft
-orecls_api.o recls_api.cpp
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
In file included from ../stlsoft/stlsoft_nulldef.h:75,
from recls_api.cpp:68:
./stlsoft/stlsoft.h:382:4: error: #error GNU C/C++ compilers whose major
version is not 2 or 3 are not currently supported by the STLSoft libraries
make[1]: *** [recls_api.o] Error 1
make[1]: Leaving directory `/home/bhinkle/dmd/src/phobos/etc/c/recls'
make: *** [etc/c/recls/recls_api.o] Error 2

My gcc info:

[phobos]$ gcc -v
Using built-in specs.
Target: i386-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-libgcj-multifile
--enable-languages=c,c++,objc,java,f95,ada --enable-java-awt=gtk
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre
--host=i386-redhat-linux
Thread model: posix
gcc version 4.0.0 20050519 (Red Hat 4.0.0-8)

I looked at stlsoft.h and it only has ifdefs for gcc 2 and 3. I added an elif
clause to accept gcc 4 and got it back on track.

Really? I couldn't get it to work with my gcc 4 ... it would complain about anonymous methods or something strange. I stopped keeping track of C++ language changes a long time ago.
Aug 27 2005
parent "Ben Hinkle" <ben.hinkle gmail.com> writes:
"James Dunne" <james.jdunne gmail.com> wrote in message 
news:dere66$2n5r$1 digitaldaemon.com...
 In article <ddlomk$jek$1 digitaldaemon.com>, Ben Hinkle says...
When I try to rebuild phobos for dmd.129 on linux I get an error in etc/c

make[1]: Entering directory `/home/bhinkle/dmd/src/phobos/etc/c/recls'
g++ -Wall  -O4 -mcpu=i686  -DNDEBUG -DUNIX -D_M_IX86 -c -I. -I../stlsoft
-orecls_api.o recls_api.cpp
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
In file included from ../stlsoft/stlsoft_nulldef.h:75,
from recls_api.cpp:68:
./stlsoft/stlsoft.h:382:4: error: #error GNU C/C++ compilers whose major
version is not 2 or 3 are not currently supported by the STLSoft libraries
make[1]: *** [recls_api.o] Error 1
make[1]: Leaving directory `/home/bhinkle/dmd/src/phobos/etc/c/recls'
make: *** [etc/c/recls/recls_api.o] Error 2

My gcc info:

[phobos]$ gcc -v
Using built-in specs.
Target: i386-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-libgcj-multifile
--enable-languages=c,c++,objc,java,f95,ada --enable-java-awt=gtk
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre
--host=i386-redhat-linux
Thread model: posix
gcc version 4.0.0 20050519 (Red Hat 4.0.0-8)

I looked at stlsoft.h and it only has ifdefs for gcc 2 and 3. I added an 
elif
clause to accept gcc 4 and got it back on track.

Really? I couldn't get it to work with my gcc 4 ... it would complain about anonymous methods or something strange. I stopped keeping track of C++ language changes a long time ago.

True. It got back on track but then it fell off again later on. In the end I just removed $(RECLS_OBJ) from the build rule for libphobos.a and everything works fine (presumably as long as you don't use recls).
Aug 28 2005