From: Baptiste L. <gai...@fr...> - 2002-10-25 06:54:33
|
----- Original Message ----- From: "Sven Reichard" <rei...@ma...> To: "CppTool Mailing List" <Cpp...@li...> Sent: Friday, October 25, 2002 6:35 AM Subject: [Cpptool-develop] Linux build problems > Folks, > > the code submitted by Baptiste looks nice.. from the outside. > Unfortunately, the extended use of the Boost library is more than gcc 2.96 > (the most widespread version of the GNU Compiler Collection for Linux) can > handle. This is neither Boost's nor Baptiste's fault; gcc 2 implemented > just an "approximation" of the standard library; in fact it was developed > while the standard wasn't fixed yet. Hmm, are you refering to lexical_cast ? I just looked over the compiler status and it seems to be the only one not to compile with gcc 2.95 with STLPort. I expect the compilation issue for Boost.FileSystem to be fixed once the development start again. Though, it would be nice if we could compile on gcc 2.95 which it a widely spread compiler I believe. > So I moved to gcc 3. After figuring out how to run both versions on the > same machine, this lead to an interesting other problem. This compiler > tries to implement Standard C++ -- and is very picky about non-standard > code, much more so than MSVC6, which Baptiste used for development. One > example was in the blanker; the code looked something like > std::string str; > const char* _textBegin = str.begin(); Left over of the original implementation which used std::string::iterator. But I switched back to using plain char, which works just as well. > What's wrong with that? Well, str.begin() is a string::iterator, and there > is no standard way to convert that into a character pointer. However, this > is easy to fix, since str.c_str() returns exactly what we need. > Other things that happens are throw-specifications being too general. This > all is just to let you know that it will take a few days to have a running > program under Linux. I will fix the necessary files and commit the changes > once it runs. After that I'll go back to testing. Are you refering to ParseError destructor and what() methods which should be marked with throw(), or something else ? > BTW, maybe my edition of Stroustrup is a bit outdated. Has <stdexception> > been renamed to <stdexcept>? Both compilers seem to agree on that one. I think it does. At least I know that it works for VC++ STL, gcc STL, CodeWarrior MTL... Baptiste. > Have a good night (even if the Europeans are about to get up :) ) > > Sven. > > -- > Sven Reichard > Dept. of Math. Sci. > University of Delaware > rei...@ma... |