패키지 관리자의 도움 없이 gcc(+jit) 업그레이드: 또 무엇을 다시 빌드해야 합니까?

패키지 관리자의 도움 없이 gcc(+jit) 업그레이드: 또 무엇을 다시 빌드해야 합니까?

현재 사용 중ggc 9는 현재 지원되지 않습니다Linux-5.4에서는 최소한 gcc 10으로 업그레이드해야 합니다.

ㅏ/그래도역사적인따라서 이 업그레이드는 패키지 관리자에 의존하지 않고 수행되어야 합니다.
두번째/활성화하려면 gcc를 공유 라이브러리(libgccjit.so)로 빌드해야 합니다.적시 컴파일.

이 경우 업그레이드가 성공한 후:

1/툴체인의 다른 구성 요소(glibc? libffi? libtool? binutils?...)가 최신 gcc로 다시 빌드되어야 합니까?

2/완전히 다시 빌드해야 하거나 부분적으로 다시 빌드하지 않도록 주의해야 하는 다른 패키지(libgccjit.so에 의존하는 패키지 외에)가 있습니까?
(예를 들어(이것이 여전히 유효한지는 모르겠습니다) 모든 qt-* 구성 요소를 동일한 툴체인으로 빌드해야 했던 때가 있었습니다.)

답변1

  1. 당신은해야하지필요다른 것을 재구축하고 유지 관리의 수동 특성을 고려하면 필요하지 않은 것은 재구축하지 않을 것입니다. 일부 도구에는 GCC 경로가 포함되어 있으므로 이를 다시 빌드해야 할 수도 있습니다. 이는 libtool기본 설정에 포함되어 있습니다.

  2. 커널과 그 위에 구축하는 외부 모듈 외에 다른 모듈은 없습니다. 동일한 툴체인을 사용하여 모두 빌드해야 하는 바이너리 세트가 있더라도 세트에 새 바이너리를 추가하려는 경우가 아니면 이미 가지고 있는 바이너리를 다시 빌드할 필요가 없습니다. 전체 세트를 재구성하려면).

증거로 나는 새로운 GCC 업로드(주요 버전 업그레이드 포함)로 인해 라이브러리 변환(GCC 라이브러리 중 하나의 주요 소네임 업그레이드)을 도입하지 않는 한 다른 어떤 것도 다시 빌드되지 않는 데비안을 제안합니다. 이 경우 패키지는 다릅니다. 재구축된 충돌 라이브러리의 경우. 사물을 재구성하는 지혜에 대하여,Fedora는 모든 것을 다시 구축합니다.특정 버전의 대상 툴체인이 준비되면 수동으로 유지 관리하는 설정에는 약간 과도한 것 같습니다.

관련 정보