centos 6.7 plateform에 배포되고 배포판의 기본 C++ 컴파일러 (gcc 4.4.7)로 작성된 응용 프로그램이 있습니다. 이제 Qt 5.7로 업그레이드하는 몇 가지 이유 때문에, C++ 11 기능이 완벽하게 지원되는 최신 컴파일러를 사용해야합니다. devtoolset-2의 gcc 4.8.2를 가정 해 봅시다. 또 다른 가능성은 소스에서 gcc의 새 버전을 빌드하는 것이 었습니다. https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html에 따르면 4.8.3 (그러나 4.8.2는 언급되지 않음) gcc 버전은 libstdC++. 6.0.13 (centos 6.7의 기본 C++ lib)과 역 호환됩니다.업그레이드 된 컴파일러로 빌드 된 응용 프로그램을 안전하게 배포하는 방법
이 새로운 gcc 4.8.2 버전으로 응용 프로그램을 다시 컴파일했고 모든 것이 dev 환경에서 잘 돌아가는 것 같습니다. 앱은 기본 시스템 인 C++, gcc 및 c libs를 사용합니다.
그러나 centos 6.7 (예를 들어 새로 설치 한 후)에 배포 할 때 나는 그렇게하는 것이 얼마나 안전하다고 생각하십니까? ABI 호환성에 의존하는 대신 내 앱을 빌드하는 데 사용 된 gcc 버전과 호환되는 최신 C++ 및 C 라이브러리를 제공하는 것이 더 낫겠습니까?
중복 가능 :) http://stackoverflow.com/questions/15599714/risks-of-different-gcc-versions-at-link-run-time – AMA
감사합니다. 실제로 조용합니다. – Scab