
Hello everybody, I faced a problem when upgrading a piece of software originally written using Borland C++ Builder 5. Because there are some configuration files I need to parse I thought it might be a good idea to use Boost Regex. However, I've encountered many errors when I tried to build it. I've downloaded 1.37.0 release and followed instructions in "Getting started on Windows": E:\boost_1_37_0\bjam.exe --build-dir E:\boost-build --toolset=borland As result I get multiple errors: "bcc32.exe" -j5 -g255 -q -c -P -Ve -Vx -a8 -b- -O2 -tWC -tWR -tWC -WM- -DBOOST_ALL_NO_LIB=1 -DNDEBUG -I"." -I"C:\Program Files\Borland\CBuilder5/include/" build\borland\release\link-static\copysignf.obj" "libs\math\build\..\src\tr1\copysignf.cpp" ...failed borland.compile.c++ e:\boost-build\boost\bin.v2\libs\math\build\borland\release\link-static\copysignf.obj... borland.compile.c++ e:\boost-build\boost\bin.v2\libs\math\build\borland\release\link-static\erfcf.obj libs\math\build\..\src\tr1\erfcf.cpp: Error E2176 .\boost/math/tr1.hpp 179: Too many types in declaration Error E2176 .\boost/math/tr1.hpp 180: Too many types in declaration Error E2176 .\boost/math/tr1.hpp 181: Too many types in declaration I've downloaded BCC 5.5.1 from Borland, but the effect was the same. I also was trying some older releases of Boost, including 1.32.0 and 1.33.1. E:\boost_1_33_1\bjam.exe -sTOOLS=borland install "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -DNDEBUG -DNDEBUG -DBOOST_IOSTREAMS_DYN_LINK=1 -O2 -vi -w-inl -tWR -tWD -WM- -w-8001 -I"bin\boost\libs\iostreams\build" -I"E:\boost_1_33_1" -I"E:\bo ost_1_33_1" -o"bin\boost\libs\iostreams\build\boost_iostreams.dll\borland\release\mapped_file.obj" "E:\boost_1_33_1\libs\iostreams\build\..\src\mapped_file.cpp" (...) borland-C++-action bin\boost\libs\iostreams\build\boost_iostreams.dll\borland\release\threading-multi\mapped_file.obj E:\boost_1_33_1\libs\iostreams\build\..\src\mapped_file.cpp: Error E2401 E:\boost_1_33_1\boost/iostreams/detail/is_iterator_range.hpp 20: Invalid template argument list Error E2303 E:\boost_1_33_1\boost/iostreams/detail/is_iterator_range.hpp 20: Type name expected Error E2238 E:\boost_1_33_1\boost/range/iterator.hpp 102: Multiple declaration for 'range_iterator<char *>' Error E2344 E:\boost_1_33_1\boost/range/iterator.hpp 77: Earlier declaration of 'range_iterator<char *>' Error E2238 E:\boost_1_33_1\boost/range/iterator.hpp 108: Multiple declaration for 'range_iterator<wchar_t *>' Error E2228 E:\boost_1_33_1\boost/range/iterator.hpp 108: Too many error or warning messages I don't have an idea what's wrong. I was googling a lot, but after 6 hours I guess I'll give up for today. Maybe there's something obvious I don't see, could anybody point me in the right direction, please? Thanks a lot, Marcin

Marcin Kurek wrote:
Hello everybody,
I faced a problem when upgrading a piece of software originally written using Borland C++ Builder 5. Because there are some configuration files I need to parse I thought it might be a good idea to use Boost Regex. However, I've encountered many errors when I tried to build it. I've downloaded 1.37.0 release and followed instructions in "Getting started on Windows":
E:\boost_1_37_0\bjam.exe --build-dir E:\boost-build --toolset=borland
As result I get multiple errors:
Not all of Boost will work with that old compiler, pass the "--with-regex" option to bjam to build just the regex library. HTH, John.
participants (2)
-
John Maddock
-
Marcin Kurek