Igor
Igor

Reputation: 27250

old gcc version for boost

When I try to use boost on an old Linux system, I get the message:

Compiler not configured - please reconfigure

The version of my gcc is:

gcc version 2.9-gnupro-99r1

And in boost's gcc.hpp file I see:

// versions check:
// we don't know gcc prior to version 2.90:
#if (__GNUC__ == 2) && (__GNUC_MINOR__ < 90)
#  error "Compiler not configured - please reconfigure"
#endif

So, are gcc 2.9 and 2.90 actually the same thing? If yes - can I just update the gcc.hpp? And if not, how can I still use boost?


EDIT:

I actually tried to change (__GNUC_MINOR__ < 90) to (__GNUC_MINOR__ < 9). Seems like 2.9 and 2.90 are not the same because now I get compilation errors.

Seems like the errors are because this compiler doesn't support the \ (line extension) characters in the preprocessor macros. These line breaks are used by boost in many places.

Upvotes: 3

Views: 978

Answers (2)

rubenvb
rubenvb

Reputation: 76519

If you can't upgrade the compiler, downgrade the sources. Not really very sensible advice, but still, it might work.

Old Boost releases are found here: http://sourceforge.net/projects/boost/files/

Good luck!

PS: if it's the line breaks that are killing you, maybe you can try to remove them (if there aren't too many)

Upvotes: 2

anon
anon

Reputation:

All C and C++ compilers have supported the \ in macros since the year dot, so that is not the problem. I think it unlikely that Boost will support 2.9x compilers (but who knows?) - why not simply upgrade the compiler? GCC is now on version 4.5, so yours is ridiculously outdated.

You might also want to look at this page, which documents Boost's compiler support.

Upvotes: 2

Related Questions