Right; here are my compiler options, build configuration and the rest.
Basically I am building a static library, which depends on some in-house
software components, Qt and Boost.
Our own library S3FC (), uses templates in such a manner as to make MSVC6
very unhappy. Therefore we use the Intel compiler under M$.
Needless to say, our software compiles problemfree with GCC. For the
aforementioned and other reasons we do not make use of
Microsoft Foundation Classes when compiling under Windoze, but use the
latest version of STLPort (which has been at the same version level for some
time now).
Anyway; our Windows development work takes place under Visual C++ but with
the Intel compiler (version 7.0) selected instead of the MSVC6 compiler.
OK; with this background then, here is the basic Visual C++ project settings
for my build of the above-mentioned library. I have removed include paths
etc. which point to in-house
software:
1) "Not Using MFCC" selected for general project settings (as explained
above).
2) Warning level => 3
Optimizations => Maximise Speed
Debug info => None
3) Project Options =>
/nologo /ML /W3 /GR /GX /O2 /D "NDEBUG" /D "DEP_MS_WIN" /D "WIN32" /D
"_WINDOWS"
/U "QT_NO_STL" /Fp"Release/libs3_qt.pch" /YX /Fo"Release/" /Fd"Release/" /FD
/c
The include and library paths for STLPort is set somewhere else, but these
are basically the options.
If anyone knows of any special project options, preprocessor directives I am
perhaps missing for building Boost-related projects with the Intel compiler,
please let me know!
I suspect that we will soon be using Boost for other functionality besides
that provided by date_time at the moment. Besides, I like the library and
works in our main development environment,
Linux with the GCC compiler.
OK, I am forgetting about this problem for a day or two...
Thanks to everyone who has provided me with help so far, especially Jeff
Garland.
Greetings,
Andre.
----- Original Message -----
From: "Jeff Garland"
Anyway; it just irks me that I should have issues with 'standard' stuff, like streaming operators. And the fact that the same code compiles with MSVC6 and NOT the Intel compiler.
Ok.
Back on the #define which started my woes. The fact of the matter is, I
get
everything compiled when using MSVC6 and not the Intel compiler! I.e. the MSVC6-specific code works, the 'other' compiler code for the supposedly more Boost-compliant/friendly Intel compiler does not.
I guess I was thinking that what was happening is that when compiling with Intel you were getting the MSVC defined and hence were taking the non-generic code. Perhaps not...
Have you tried to run the tests in libs/date_time/test with your Intel/STLPort configuration? That might help diagnose the issue. Also, it might be instructive to post your compile command. Perhaps someone with experience on Intel can figure out why your configuration differs from the one that apparently passes the tests.
Could it be because I am using STLPort in conjunction with the Intel compiler?
Might be a factor. There have been some issues before with the library configuration assuming MSVC limitations which don't apply with STLPort in the mix.
Aargh. Just give me Linux and GCC...
Agreed :-)
Jeff
Info: http://www.boost.org Wiki: http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl Unsubscribe: mailto:boost-users-unsubscribe@yahoogroups.com
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/