
Abdelmorhit El Rhazi wrote:
Thanks guys. Please find my answers to your questions :
1- Possibly he's using a 1.33.1 release on Windows and a CVS version on Linux -->I connect to a remote machine in which I do not have admin right. So, I used the default boost library. I did not download and install the newest version of boost. May be this is the cause. If you think so, how can I verify the version that are this machine. Any idea. 2- What is gcc -v saying? ----> Here is the display of that command: Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.3.2/specs Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=i386-redhat-linux Thread model: posix gcc version 3.3.2 20031022 (Red Hat Linux 3.3.2-1)
Pointless, as I said before.
3- That this error didn't become apparent und VC++ might have been caused by some compiler settings (precompiled headers, maybe?).
s/und/under/
---> What do you mean ?
If you switch your compiler (VC++) to a mode that is not compliant to the C++ standard and the compiler accepts some code then that doesn't indicate whether the code is correct. The header, as has been pointed out clearly, lacks include guards. So gcc is *correcly* complaining if that header gets included multiple times. At that point, there's no point in discussing the version number of a compiler that emits a seemingly correct error message. Any suggestion to upgrade the compiler to fix that error a misleading. You may want to upgrade your compiler anyway. The version number seems to indicate one of that homebrew compilers from Red Hat, which used to come with a lot of (unrelated) problems in the past. Regards, m