Borland C++ - Boost Library 1.55 Error
-
21-12-2019 - |
Question
OS: Windows 7 IDE: Borland Builder 6
I tried to add the mysql connector, and appeared such errors. How to fix it?
[C++ Error] substitute_fwd.hpp(49): E2401 Invalid template argument list
[C++ Error] substitute_fwd.hpp(49): E2041 Incorrect use of default
[C++ Error] substitute_fwd.hpp(49): E2040 Declaration terminated incorrectly
[C++ Error] meta_utils.hpp(54): E2401 Invalid template argument list
[C++ Error] meta_utils.hpp(54): E2303 Type name expected
[C++ Error] utility.hpp(38): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] utility.hpp(46): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] utility.hpp(54): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] utility.hpp(68): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] utility.hpp(69): E2034 Cannot convert 'move_detail::is_rv<T>::value' to 'bool'
[C++ Error] utility.hpp(70): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] utility.hpp(76): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] utility.hpp(77): E2034 Cannot convert 'move_detail::is_rv<T>::value' to 'bool'
[C++ Error] utility.hpp(78): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] iterator.hpp(43): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] algorithm.hpp(177): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] algorithm.hpp(216): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] algorithm.hpp(240): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] algorithm.hpp(263): E2437 'typename' should be followed by a qualified, dependent type name
[C++ Error] static_assert.hpp(62): E2221 Macro argument syntax error
[C++ Error] static_assert.hpp(182): E2221 Macro argument syntax error
[C++ Error] aligned_storage.hpp(51): E2272 Identifier expected
[C++ Error] aligned_storage.hpp(56): E2321 Declaration does not specify a tag or an identifier
[C++ Error] cstdint.hpp(380): E2272 Identifier expected
[C++ Error] cstdint.hpp(381): E2272 Identifier expected
[C++ Error] cstdint.hpp(381): E2228 Too many error or warning messages
Solution
in most cases to make MSVC++ like libs to work in Borland/Embarcadero environment:
- reorder and/or add
#include
statements - add missing #define
anyway for MySQL you can use their own hinterface like libmysql.dll instead of boost
- it work well (tested in BCB5,BDS2006)
- just get
libmysql.dll
+ header files (downloadable from MySQL pages and also included in some installations) - create Intel/Borland compatible lib file with implib.exe tool (it is in Borlands bin folder)
link it to your project + add include and that it is all
usage is almost the same as in PHP
[notes]
- I never properly tested BCB6 because it is extremly buggy
- BCB5 was way more better in everything so I switch back almost immediately
- now I use BDS2006 which is also old but can do almost anything 32bit in it and is free for 100 years
- with some minor restrictions which I don't mind anyway
- sadly Embarcadero downed its server so no new licenses can be obtained to it (at least that I know of)
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow