Ściągnąłem i zainstalowałem Code::Blocks, MinGW 4.5.2 i OpenLayer 2.1.
Gdy kompiluje stary projekt z Allegro 4.2, nie mam żadnych problemów, ale najprostszy kod OL nie chce się skompilować.

main.cpp:

#include <OpenLayer.hpp>
using namespace ol;

int main()
{
    Setup::SetupProgram();


    return 0;
}END_OF_MAIN();

dolinkowane biblioteki:
openlayer; glyph-agl; freetype; png; z; agl; alleg; user32; gdi32; glu32; opengl32;

i błędy linkera:

||=== openlayertest, Debug ===|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
D:\GRY\Programowanie\MinGW\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\libopenlayer.a(Setup.obj)(.text$_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag+0x2):Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
D:\GRY\Programowanie\MinGW\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\libopenlayer.a(Setup.obj)(.text$_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag+0x3b):Setup.cpp||undefined reference to `std::string::_Rep::_S_create(unsigned, unsigned, std::allocator<char> const&)'|
D:\GRY\Programowanie\MinGW\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\libopenlayer.a(Setup.obj)(.text$_ZN2ol8ToStringIjEESsT_+0x106):Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
D:\GRY\Programowanie\MinGW\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\libopenlayer.a(Setup.obj)(.text$_ZN2ol8ToStringIjEESsT_+0x434):Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
D:\GRY\Programowanie\MinGW\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\libopenlayer.a(Setup.obj)(.text$_ZN2ol8ToStringIjEESsT_+0x494):Setup.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
D:\GRY\Programowanie\MinGW\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\libopenlayer.a(Setup.obj)(.text$_ZN2ol8ToStringIjEESsT_+0x56f):Setup.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
Rgba.cpp||undefined reference to `std::string::_Rep::_S_empty_rep_storage'|
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build finished: 50 errors, 0 warnings ===|