RE: [Boost-Users] Intel 7.0 Compiler problems
Hmm, I'm not a very good evaluator I guess, I just went about my business using 7.0 without seeing if it worked correctly :) Rather than hacking ICL, you can modify boost/compiler/intel.hpp changing 600's to 700's. I have my own dsp's for building regex, so the Compiler Selection feature worked for me (Though I've renamed cl.exe to make sure its never called because it was getting called sometimes) This is not to say I haven't had any troubles, but none with boost until the subject of my post a few minutes ago.
-----Original Message----- From: klapshin
[mailto:klapshin@yahoo.com] Sent: Wednesday, February 05, 2003 5:06 PM To: Boost-Users@yahoogroups.com Subject: [Boost-Users] Intel 7.0 Compiler problems Hello,
Tired of MSVC deficiencies, and hoping to get certain performance increase I got evaluation version of Intel C++ compiler. I've heard lots of good things about this compiler, and was under impression that transition from MSVC to ICL should be very smooth. Huh, I had all kinds of troubles.
First of all boost 1.29 gave up saying that it is an unknown compiler. Looking into config I figured that last known ICL was 6.0, so I just hacked it badly by redefining ICL as 600 prior to including any boost headers. I understand that it is not a good way, but hey, I am just evaluating it.
Ok now everything compiled, but code using regex failed to link. No wonder, I have not build regex library with new compiler. It turns out that there is no makefile for any intel compiler, so I tried to do it with bjam, but seems that bjam did not set CC variable; it invoked compilation with just line of flags. At this point I gave up and decided to focus on parts of my project which do not depend on regex.
Next surprise was when I tried to run tests, in debug mode everything was fine, but release mode failed miserably. It appears that date_time library does not work at all with optimization. Even setting /O1 did not help, only /Od worked.
Failures were in very basic date operations, for instance
boost::gregorian::date(2002,12,27) == boost::gregorian::date(2002,12,27)
is not true!
If I first construct a date, then ask for year, it throws, saying year is out of range.
I searched through Boost Users and Dev mailing lists, found few posts discussing turning on strict ansi checks on intel, and also that in this case it is better to use STLport, since STL coming with MSVC could not be compiled in ansi mode. I tried to do that but can't compile STLport in strict mode either. Using STLport in regular mode did not have any effect on problems I am having.
Here is version the compiler reports:
Intel(R) C++ Compiler for 32-bit applications, Version 7.0 Build 20021018Z
Copyright (C) 1985-2002 Intel Corporation. All rights reserved.
Now, my question is: are these problems well known? If they are, is there any plans to fix them in next release?
And while we at it, when should we expect new release? I know there were some discussions about mid-February, is there any update?
Regards,
Kirill.
------------------------ Yahoo! Groups Sponsor ---------------------~--> Get 128 Bit SSL Encryption! http://us.click.yahoo.com/LIgTpC/vN2EAA/xGHJAA/EbFolB/TM -------------------------------------------------------------- -------~->
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/
----------------------------------------------------------------------- DISCLAIMER: Information contained in this message and/or attachment(s) may contain confidential information of Zetec, Inc. If you have received this transmission in error, please notify the sender by return email. -----------------------------------------------------------------------
participants (1)
-
Tom Matelich