I used to build my dynamic library for Centos7 in Docker and everything worked until something happened (or I changed something) and now the .so requires libstdc++ with glibcxx 3.4.20. How to downgrade the requirement? Thanks!
Note that:
- I don't need to supply libstdc++ with the library
- I can't install new packages
- I don't need to update LD_LIBRARY_PATH as suggested in many posts
- I can't upgrade GCC or link stdc++ statically
I only need to know why it got upgraded and how to get it back.
upd: If I do objdump, I get following symbol:
[root@a0d062ba3109 bin]# objdump -x ../plugin/va/lib/libvaplugin.so | grep GLIBCXX_3.4.20
...
_ZSt24__throw_out_of_range_fmtPKcz@@GLIBCXX_3.4.20
It looks like throw_out_of_range_fmt is used by vector::range_check. But why it started using it and didn't use throw_out_of_range_fmt before?