Версии gcc привязаны к версиям ядра?

Есть ли какая-либо связь между версиями gcc и версией ядра? В частности, смогу ли я установить очень старую версию gcc на последнее ядро. Или я смогу собрать последнюю версию gcc на очень старом ядре? Есть ли проблемы совместимости между ними для любой версии?

5
задан 11 July 2012 в 21:16

3 ответа

У вас могут возникнуть проблемы при компиляции новых ядер с очень старых версий GCC.

Кроме того, нет, версии GCC не привязаны к версии ядра Linux:

  • Вы можете запустить древнюю версию GCC в системе с новым ядром.
  • Вы можете запустить новую версию GCC в системе с очень старым ядром. Единственное, что может помешать вам сделать это, - это если вашей новой версии GCC требуется версия libc, которая не будет работать на этом ядре. Но это не особенно вероятный сценарий.

С учетом сказанного, вы должны быть осторожны при установке старого GCC поверх более нового GCC , поскольку может потребоваться более новый GCC. Если вы собираете GCC самостоятельно из исходного кода, вы можете настроить сборку для установки с собственным префиксом (а не /usr). Если это по-прежнему нарушает сборку, убедитесь, что более новый GCC (который был там ранее) находится в каталоге ранее в переменной среды PATH, чем более старый GCC (который вы установили недавно).

0
ответ дан 11 July 2012 в 21:16

Да. Некоторым новым функциям ядра нужна последняя версия gcc и glibc для нормальной работы. Но это не ограниченное ограничение, так как ядро ​​3.0.2 работает только с gcc 4.2.1. Это больше похоже на ядро ​​3.x, работающее только с gcc 4.2.x

0
ответ дан 11 July 2012 в 21:16

Я бы с осторожностью использовал более старые версии GCC в более новых системах, особенно если исполняемые файлы более старой версии не называются gcc-1.3 (например, если в этом случае версия 1.3), потому что в противном случае это может конфликтовать с текущей версией. используется для всего в вашей системе Ubuntu и ломает вещи.

Хотя, чтобы ответить на ваш вопрос, ядро ​​и GCC не связаны напрямую, но, скорее всего, ядро ​​было построено с версией GCC, которую вы используете (или немного старше).

0
ответ дан 11 July 2012 в 21:16

Другие вопросы по тегам:

Похожие вопросы: