Linux программы C++ создает со ссылкой GCC против libgcc_s.so.1
и libstdc++.so.6
библиотеки, каждая из которых содержит несколько ABIs: более новые версии содержат ABIs от предыдущей версии плюс новые. В программном документе ABI GCC говорится, что сборка программ против более старого времени выполнения должна смочь быть выполненной с новым временем выполнения. Так, теоретически, более старые двоичные файлы должны быть выполнимыми в новых системах.
Если я имею систему с более старым временем выполнения и не хочу проходить проблему обновить GCC в этой системе, я могу вручную заменить вышеупомянутые библиотеки новыми? В теории должны работать все старые исполняемые файлы, которые связываются против него (включая сам GCC), но похоже на клудж.
Действительно ли безопасно сделать так?