In one word: anything that relies on std::string might break.

The problem is that, prior to g++ 5.x, libstdc++ used a reference counting 
std::string which conformed to C++98 and C++03 but not C++11.
As reference counting was no longer allowed, libstdc++ maintainers tried to be 
up-to-date with the new standard, and there went g++ 4.7 and g++ 4.7.1.
However, upgrade of std::string broke so many libraries, which the community 
complained about so much that libstdc++ maintainers decided to keep backward 
compatibility with legacy libraries for some time,and there went g++ 4.7.2, 
4.8.x and 4.9.x.
But sooner or later they would get rid of it. The result was g++ 5.x.

------------------                               
Best regards,
lh_mouse
2015-07-28

-------------------------------------------------------------
发件人:Adrian Pop <[email protected]>
发送日期:2015-07-28 08:26
收件人:Msys2,fkafka
抄送:
主题:[Msys2-users] gcc 5.2.0 issues?


Hi all,

After I upgraded to gcc 5.2.0 I get some weird linking errors.

Is it possible that the gcc 5.2.0 generates code that is
not linker compatible with libraries built with gcc 4.9.2?

To reproduce do this:

# install OSG
$ pacman -S mingw64/mingw-w64-x86_64-OpenSceneGraph

# get an OSG example from 
http://trac.openscenegraph.org/projects/osg//wiki/Support/UserGuides/Examples
$ wget 
http://trac.openscenegraph.org/projects/osg/export/15027/OpenSceneGraph/trunk/examples/osganimate/osganimate.cpp

# compile the example using latest gcc 5.2.0
$ g++ osganimate.cpp `pkg-config --libs openscenegraph`
F:\msys\tmp\cch9wEYJ.o:osganimate.cpp:(.text+0x149e): undefined 
reference to `__imp__ZN3osg14ArgumentParser4readERKNSt7__cxx1112basic_ 
                              stringIcSt11char_traitsIcESaIcEEE'
F:\msys\tmp\cch9wEYJ.o:osganimate.cpp:(.text+0x151e): undefined 
reference to `__imp__ZN3osg14ArgumentParser4readERKNSt7__cxx1112basic_ 
                              stringIcSt11char_traitsIcESaIcEEE'
F:\msys\tmp\cch9wEYJ.o:osganimate.cpp:(.text+0x15b8): undefined 
reference to `__imp__ZN3osg14ArgumentParser4readERKNSt7__cxx1112basic_ 
                              stringIcSt11char_traitsIcESaIcEEE'
collect2.exe: error: ld returned 1 exit status

Additional question:
is it possible to downgrade to gcc 4.9.2 toolchain using pacman?

Cheers,
Adrian Pop/


------------------------------------------------------------------------------
_______________________________________________
Msys2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/msys2-users



------------------------------------------------------------------------------
_______________________________________________
Msys2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/msys2-users

Reply via email to