Как я могу развернуть программу C ++ 11 (с зависимостями) на CentOS 6, чей GCC - C ++ 03?

GCC хорош с ABI-совместимостью, если вы используете тот же стандарт C ++ [1].

Но меня поражает, что если совместно используемая библиотека, скомпилированная GCC 4.3 в режиме C ++ 03, предоставляет, скажем,std::stringэто будет другойstd::string чем это понимает исполняемый файл, скомпилированный GCC 4.8 в режиме C ++ 11.

Причина, по которой я спрашиваю, заключается в том, что я планирую развернуть программу, скомпилированную GCC 4.8, в режиме C ++ 11 на CentOS 6, чей максимальный пакетный GCC составляет 4,3 ... и некоторые из общих библиотек (будь то сторонние библиотеки C ++ или что-то более системного уровня), вероятно, все будет C ++ 03. Но если бы это было так, мы бы никогда не смогли развернуть какие-либо программы на C ++ 11 в старых дистрибутивах Linux, что кажется маловероятным.

Я наивный, чтобы думать, что здесь может быть проблема? И, если есть, как я могу решить это?

Ответы на вопрос(4)

Ваш ответ на вопрос