Страница 1 из 1
GCC версии
Добавлено: 21 апр 2022, 22:42
Olej
Сегодня выпала такая напасть: простенькое приложение C++, которое компилировалось нормально в 2014 году и позже - компилируется с g++, но вылезает ошибка с Clang (подробнее см.
Clang):
Код: Выделить всё
olej@R420:~/2022/Go/compare/fibo$ clang++ fibo_cc.cc -o fibo_cl
fibo_cc.cc:1:10: fatal error: 'iostream' file not found
#include <iostream>
^~~~~~~~~~
1 error generated.
Оказалось, что об этом много пишут - проблемы в несоответствии
версий GCC & Clang.
Код: Выделить всё
olej@R420:~$ clang++ --version
clang version 10.0.0-4ubuntu1
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Код: Выделить всё
olej@R420:~$ g++ --version
g++ (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Код: Выделить всё
olej@R420:~/2022/Go/compare/fibo$ ls /usr/include/c++/
9
Не нравятся тебе include?
На:
Код: Выделить всё
olej@R420:~/2022/Go/compare/fibo$ clang++ -I/usr/include/c++/9 -I/usr/include/x86_64-linux-gnu/c++/9 fibo_cc.cc -o fibo_cl
/usr/bin/ld: невозможно найти -lstdc++
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Отлично!
Но теперь ему не хватает расшаренных библиотек:
Код: Выделить всё
olej@R420:~/2022/Go/compare/fibo$ clang++ -I/usr/include/c++/9 -I/usr/include/x86_64-linux-gnu/c++/9 -L /usr/lib/gcc/x86_64-linux-gnu/9 fibo_cc.cc -o fibo_cl
Всё, успокоился.
Re: GCC версии
Добавлено: 21 апр 2022, 22:59
Olej
Olej писал(а): ↑21 апр 2022, 22:42
проблемы в несоответствии версий GCC & Clang.
Устраняю несоответствия:
Код: Выделить всё
olej@R420:~$ sudo apt install g++-10
[sudo] пароль для olej:
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
libstdc++-10-dev
Предлагаемые пакеты:
g++-10-multilib gcc-10-doc libstdc++-10-doc
Следующие НОВЫЕ пакеты будут установлены:
g++-10 libstdc++-10-dev
Обновлено 0 пакетов, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 11,6 MB архивов.
После данной операции объём занятого дискового пространства возрастёт на 47,1 MB.
Хотите продолжить? [Д/н] y
Пол:1 http://ubuntu.volia.net/ubuntu-archive focal-updates/universe amd64 libstdc++-10-dev amd64 10.3.0-1ubuntu1~20.04 [1.759 kB]
Пол:2 http://ubuntu.volia.net/ubuntu-archive focal-updates/universe amd64 g++-10 amd64 10.3.0-1ubuntu1~20.04 [9.803 kB]
Получено 11,6 MB за 4с (2.753 kB/s)
Выбор ранее не выбранного пакета libstdc++-10-dev:amd64.
(Чтение базы данных … на данный момент установлено 419269 файлов и каталогов.)
Подготовка к распаковке …/libstdc++-10-dev_10.3.0-1ubuntu1~20.04_amd64.deb …
Распаковывается libstdc++-10-dev:amd64 (10.3.0-1ubuntu1~20.04) …
Выбор ранее не выбранного пакета g++-10.
Подготовка к распаковке …/g++-10_10.3.0-1ubuntu1~20.04_amd64.deb …
Распаковывается g++-10 (10.3.0-1ubuntu1~20.04) …
Настраивается пакет libstdc++-10-dev:amd64 (10.3.0-1ubuntu1~20.04) …
Настраивается пакет g++-10 (10.3.0-1ubuntu1~20.04) …
Обрабатываются триггеры для man-db (2.9.1-1) …
Для проблемы Clang всё решилось:
Код: Выделить всё
olej@R420:~/2022/Go/compare/fibo$ clang++ fibo_cc.cc -o fibo_cl
Никаких ошибок!
Но тем не менее:
Код: Выделить всё
olej@R420:~$ g++ --version
g++ (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Дефаултная версия GCC - 9.4
Как переключать версии GCC из разных установленных?
Re: GCC версии
Добавлено: 21 апр 2022, 23:08
Olej
Специально перешёл на другой компьютер, который не переустанавливался Mint как минимум с 2013 года, только обновлялся.
Здесь GCC:
Код: Выделить всё
olej@nvidia:~$ aptitude search gcc | grep ^i
i gcc - компилятор C от GNU
i gcc-10-base - GCC, набор компиляторов GNU (основной пакет)
i gcc-5 - GNU C compiler
i gcc-5-base - GCC, the GNU Compiler Collection (base package)
i gcc-6-base - GCC, the GNU Compiler Collection (base package)
i A gcc-7 - компилятор C от GNU
i A gcc-7-base - GCC, набор компиляторов GNU (основной пакет)
i gcc-8-base - GCC, набор компиляторов GNU (основной пакет)
i A gcc-9 - компилятор C от GNU
i A gcc-9-base - GCC, набор компиляторов GNU (основной пакет)
i A gcc-avr - GNU C compiler (cross compiler for avr)
i gccgo-5 - GNU Go compiler
i lib32gcc-s1 - GCC support library (32 bit Version)
i lib32gcc1 - GCC support library (dependency package, 32bit)
i libgcc-5-dev - GCC support library (development files)
i A libgcc-7-dev - GCC support library (development files)
i A libgcc-9-dev - GCC support library (development files)
i libgcc-s1 - вспомогательная библиотека GCC
i libgcc1 - GCC support library (dependency package)
i libuno-cppuhelpergcc3-3 - LibreOffice UNO runtime environment -- CPPU helper library
i libuno-purpenvhelpergcc3-3 - LibreOffice UNO runtime environment -- "purpose environment" helper
i libuno-salhelpergcc3-3 - LibreOffice UNO runtime environment -- SAL helpers for C++ library
Здесь за годы накопились версии: 5, 6, 7, 8, 9, 10 !
Но:
Код: Выделить всё
olej@nvidia:~$ ls /usr/include/c++/
5 5.5.0 7 7.5.0 9
Ну, возможно во времена версий 6, 8, 10 мне нужен был gcc и не нужен был g++
Код: Выделить всё
olej@nvidia:~$ ls -l /usr/include/c++/
итого 36
drwxr-xr-x 12 root root 12288 дек 20 2018 5
lrwxrwxrwx 1 root root 1 апр 11 2018 5.5.0 -> 5
drwxr-xr-x 12 root root 12288 июл 12 2020 7
lrwxrwxrwx 1 root root 1 дек 4 2019 7.5.0 -> 7
drwxr-xr-x 13 root root 12288 апр 3 12:13 9
Olej писал(а): ↑21 апр 2022, 22:59
Как переключать версии GCC из разных установленных?
Но остаётся этот вопрос!
Re: GCC версии
Добавлено: 21 апр 2022, 23:17
Olej
Olej писал(а): ↑21 апр 2022, 23:08
Но остаётся этот вопрос!
Обычно это делается, если делается
грамотно с помощью альтернатив, update-alternatives, см.
alternatives...
Но:
Код: Выделить всё
olej@nvidia:~$ update-alternatives --display gcc
update-alternatives: ошибка: нет альтернатив для gcc
GCC при инсталляциях не устанавливает альтернативы?
Код: Выделить всё
olej@nvidia:~$ which gcc
/usr/bin/gcc
olej@nvidia:~$ ls -l `which gcc`
lrwxrwxrwx 1 root root 5 мар 20 2020 /usr/bin/gcc -> gcc-9
olej@nvidia:~$ ls -lL `which gcc`
-rwxr-xr-x 1 root root 1158288 мар 9 19:57 /usr/bin/gcc
Код: Выделить всё
olej@nvidia:~$ ls -l `which g++`
lrwxrwxrwx 1 root root 5 мар 20 2020 /usr/bin/g++ -> g++-9
olej@nvidia:~$ ls -lL `which g++`
-rwxr-xr-x 1 root root 1158288 мар 9 19:57 /usr/bin/g++
Ну вот после этого становится более-менее ясно:
Код: Выделить всё
olej@nvidia:~$ ls -lL /usr/bin/g++-*
-rwxr-xr-x 1 root root 911744 апр 11 2018 /usr/bin/g++-5
-rwxr-xr-x 1 root root 1055680 мар 26 2020 /usr/bin/g++-7
-rwxr-xr-x 1 root root 1158288 мар 9 19:57 /usr/bin/g++-9
Код: Выделить всё
olej@nvidia:~$ ls -lL /usr/bin/gcc-*
-rwxr-xr-x 1 root root 907648 апр 11 2018 /usr/bin/gcc-5
-rwxr-xr-x 1 root root 1047488 мар 26 2020 /usr/bin/gcc-7
-rwxr-xr-x 1 root root 1158288 мар 9 19:57 /usr/bin/gcc-9
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-ar
-rwxr-xr-x 1 root root 31264 апр 11 2018 /usr/bin/gcc-ar-5
-rwxr-xr-x 1 root root 35296 мар 26 2020 /usr/bin/gcc-ar-7
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-ar-9
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-nm
-rwxr-xr-x 1 root root 31264 апр 11 2018 /usr/bin/gcc-nm-5
-rwxr-xr-x 1 root root 35296 мар 26 2020 /usr/bin/gcc-nm-7
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-nm-9
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-ranlib
-rwxr-xr-x 1 root root 31264 апр 11 2018 /usr/bin/gcc-ranlib-5
-rwxr-xr-x 1 root root 35296 мар 26 2020 /usr/bin/gcc-ranlib-7
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-ranlib-9
Re: GCC версии
Добавлено: 21 апр 2022, 23:45
Olej
Olej писал(а): ↑21 апр 2022, 23:17
Ну вот после этого становится более-менее ясно:
Тогда для полноты картины следует восполнить:
Код: Выделить всё
olej@nvidia:~$ sudo apt install gcc-10 g++-10
[sudo] пароль для olej:
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
cpp-10 libasan6 libgcc-10-dev libstdc++-10-dev
Предлагаемые пакеты:
gcc-10-locales g++-10-multilib gcc-10-doc gcc-10-multilib libstdc++-10-doc
Следующие НОВЫЕ пакеты будут установлены:
cpp-10 g++-10 gcc-10 libasan6 libgcc-10-dev libstdc++-10-dev
Обновлено 0 пакетов, установлено 6 новых пакетов, для удаления отмечено 0 пакетов, и 49 пакетов не обновлено.
Необходимо скачать 42,1 MB архивов.
После данной операции объём занятого дискового пространства возрастёт на 151 MB.
Хотите продолжить? [Д/н] y
Пол:1 http://ubuntu.netforce.hosting/ubuntu focal-updates/universe amd64 cpp-10 amd64 10.3.0-1ubuntu1~20.04 [8 610 kB]
Пол:2 http://ubuntu.netforce.hosting/ubuntu focal-updates/main amd64 libasan6 amd64 10.3.0-1ubuntu1~20.04 [2 062 kB]
Пол:3 http://ubuntu.netforce.hosting/ubuntu focal-updates/main amd64 libgcc-10-dev amd64 10.3.0-1ubuntu1~20.04 [2 342 kB]
Пол:4 http://ubuntu.netforce.hosting/ubuntu focal-updates/universe amd64 gcc-10 amd64 10.3.0-1ubuntu1~20.04 [17,5 MB]
Пол:5 http://ubuntu.netforce.hosting/ubuntu focal-updates/universe amd64 libstdc++-10-dev amd64 10.3.0-1ubuntu1~20.04 [1 759 kB]
Пол:6 http://ubuntu.netforce.hosting/ubuntu focal-updates/universe amd64 g++-10 amd64 10.3.0-1ubuntu1~20.04 [9 803 kB]
Получено 42,1 MB за 11с (3 752 kB/s)
Выбор ранее не выбранного пакета cpp-10.
(Чтение базы данных … на данный момент установлено 440999 файлов и каталогов.)
Подготовка к распаковке …/0-cpp-10_10.3.0-1ubuntu1~20.04_amd64.deb …
Распаковывается cpp-10 (10.3.0-1ubuntu1~20.04) …
Выбор ранее не выбранного пакета libasan6:amd64.
Подготовка к распаковке …/1-libasan6_10.3.0-1ubuntu1~20.04_amd64.deb …
Распаковывается libasan6:amd64 (10.3.0-1ubuntu1~20.04) …
Выбор ранее не выбранного пакета libgcc-10-dev:amd64.
Подготовка к распаковке …/2-libgcc-10-dev_10.3.0-1ubuntu1~20.04_amd64.deb …
Распаковывается libgcc-10-dev:amd64 (10.3.0-1ubuntu1~20.04) …
Выбор ранее не выбранного пакета gcc-10.
Подготовка к распаковке …/3-gcc-10_10.3.0-1ubuntu1~20.04_amd64.deb …
Распаковывается gcc-10 (10.3.0-1ubuntu1~20.04) …
Выбор ранее не выбранного пакета libstdc++-10-dev:amd64.
Подготовка к распаковке …/4-libstdc++-10-dev_10.3.0-1ubuntu1~20.04_amd64.deb …
Распаковывается libstdc++-10-dev:amd64 (10.3.0-1ubuntu1~20.04) …
Выбор ранее не выбранного пакета g++-10.
Подготовка к распаковке …/5-g++-10_10.3.0-1ubuntu1~20.04_amd64.deb …
Распаковывается g++-10 (10.3.0-1ubuntu1~20.04) …
Настраивается пакет libasan6:amd64 (10.3.0-1ubuntu1~20.04) …
Настраивается пакет cpp-10 (10.3.0-1ubuntu1~20.04) …
Настраивается пакет libgcc-10-dev:amd64 (10.3.0-1ubuntu1~20.04) …
Настраивается пакет gcc-10 (10.3.0-1ubuntu1~20.04) …
Настраивается пакет libstdc++-10-dev:amd64 (10.3.0-1ubuntu1~20.04) …
Настраивается пакет g++-10 (10.3.0-1ubuntu1~20.04) …
Обрабатываются триггеры для man-db (2.9.1-1) …
Обрабатываются триггеры для libc-bin (2.31-0ubuntu9.7) …
Код: Выделить всё
olej@nvidia:~$ ls -lL /usr/bin/g++-*
-rwxr-xr-x 1 root root 830184 мая 29 2021 /usr/bin/g++-10
-rwxr-xr-x 1 root root 911744 апр 11 2018 /usr/bin/g++-5
-rwxr-xr-x 1 root root 1055680 мар 26 2020 /usr/bin/g++-7
-rwxr-xr-x 1 root root 1158288 мар 9 19:57 /usr/bin/g++-9
Код: Выделить всё
olej@nvidia:~$ ls -lL /usr/bin/gcc-*
-rwxr-xr-x 1 root root 826088 мая 29 2021 /usr/bin/gcc-10
-rwxr-xr-x 1 root root 907648 апр 11 2018 /usr/bin/gcc-5
-rwxr-xr-x 1 root root 1047488 мар 26 2020 /usr/bin/gcc-7
-rwxr-xr-x 1 root root 1158288 мар 9 19:57 /usr/bin/gcc-9
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-ar
-rwxr-xr-x 1 root root 23080 мая 29 2021 /usr/bin/gcc-ar-10
-rwxr-xr-x 1 root root 31264 апр 11 2018 /usr/bin/gcc-ar-5
-rwxr-xr-x 1 root root 35296 мар 26 2020 /usr/bin/gcc-ar-7
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-ar-9
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-nm
-rwxr-xr-x 1 root root 23080 мая 29 2021 /usr/bin/gcc-nm-10
-rwxr-xr-x 1 root root 31264 апр 11 2018 /usr/bin/gcc-nm-5
-rwxr-xr-x 1 root root 35296 мар 26 2020 /usr/bin/gcc-nm-7
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-nm-9
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-ranlib
-rwxr-xr-x 1 root root 23080 мая 29 2021 /usr/bin/gcc-ranlib-10
-rwxr-xr-x 1 root root 31264 апр 11 2018 /usr/bin/gcc-ranlib-5
-rwxr-xr-x 1 root root 35296 мар 26 2020 /usr/bin/gcc-ranlib-7
-rwxr-xr-x 1 root root 35464 мар 9 19:57 /usr/bin/gcc-ranlib-9
Код: Выделить всё
olej@nvidia:~$ ls /usr/include/c++/
10 5 5.5.0 7 7.5.0 9
Re: GCC версии
Добавлено: 21 апр 2022, 23:56
Olej
Olej писал(а): ↑21 апр 2022, 23:45
Тогда для полноты картины следует восполнить:
На всякий случай:
Код: Выделить всё
olej@nvidia:~$ sudo update-alternatives --remove-all gcc
olej@nvidia:~$ update-alternatives --list gcc
update-alternatives: ошибка: нет альтернатив для gcc
Пошли добавлять:
Код: Выделить всё
olej@nvidia:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 70 --slave /usr/bin/g++ g++ /usr/bin/g++-9
update-alternatives: используется /usr/bin/gcc-9 для предоставления /usr/bin/gcc (gcc) в автоматическом режиме
olej@nvidia:~$ update-alternatives --list gcc
/usr/bin/gcc-9
Код: Выделить всё
olej@nvidia:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 60 --slave /usr/bin/g++ g++ /usr/bin/g++-10
olej@nvidia:~$ update-alternatives --list gcc
/usr/bin/gcc-10
/usr/bin/gcc-9
Код: Выделить всё
olej@nvidia:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 50 --slave /usr/bin/g++ g++ /usr/bin/g++-7
olej@nvidia:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 40 --slave /usr/bin/g++ g++ /usr/bin/g++-5
olej@nvidia:~$ update-alternatives --list gcc
/usr/bin/gcc-10
/usr/bin/gcc-5
/usr/bin/gcc-7
/usr/bin/gcc-9
Re: GCC версии
Добавлено: 22 апр 2022, 00:02
Olej
Olej писал(а): ↑21 апр 2022, 23:56
Пошли добавлять:
- Снимок экрана от 2022-04-22 00-01-19.png (50.33 КБ) 862 просмотра
Код: Выделить всё
olej@nvidia:~$ update-alternatives --display gcc
gcc - автоматический режим
link best version is /usr/bin/gcc-9
ссылка сейчас указывает на /usr/bin/gcc-9
link gcc is /usr/bin/gcc
slave g++ is /usr/bin/g++
/usr/bin/gcc-10 — приоритет 60
подчинённый g++: /usr/bin/g++-10
/usr/bin/gcc-5 — приоритет 40
подчинённый g++: /usr/bin/g++-5
/usr/bin/gcc-7 — приоритет 50
подчинённый g++: /usr/bin/g++-7
/usr/bin/gcc-9 — приоритет 70
подчинённый g++: /usr/bin/g++-9
Код: Выделить всё
olej@nvidia:~$ gcc --version
gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Код: Выделить всё
olej@nvidia:~$ g++ --version
g++ (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Re: GCC версии
Добавлено: 22 апр 2022, 00:20
Olej
Изменяем:
Код: Выделить всё
olej@nvidia:~$ sudo update-alternatives --config gcc
[sudo] пароль для olej:
Есть 4 варианта для альтернативы gcc (предоставляет /usr/bin/gcc).
Выбор Путь Приор Состояние
------------------------------------------------------------
* 0 /usr/bin/gcc-9 70 автоматический режим
1 /usr/bin/gcc-10 60 ручной режим
2 /usr/bin/gcc-5 40 ручной режим
3 /usr/bin/gcc-7 50 ручной режим
4 /usr/bin/gcc-9 70 ручной режим
Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: используется /usr/bin/gcc-10 для предоставления /usr/bin/gcc (gcc) в ручном режиме
Код: Выделить всё
olej@nvidia:~$ update-alternatives --display gcc
gcc - ручной режим
link best version is /usr/bin/gcc-9
ссылка сейчас указывает на /usr/bin/gcc-10
link gcc is /usr/bin/gcc
slave g++ is /usr/bin/g++
/usr/bin/gcc-10 — приоритет 60
подчинённый g++: /usr/bin/g++-10
/usr/bin/gcc-5 — приоритет 40
подчинённый g++: /usr/bin/g++-5
/usr/bin/gcc-7 — приоритет 50
подчинённый g++: /usr/bin/g++-7
/usr/bin/gcc-9 — приоритет 70
подчинённый g++: /usr/bin/g++-9
Код: Выделить всё
olej@nvidia:~$ gcc --version
gcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Код: Выделить всё
olej@nvidia:~$ g++ --version
g++ (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- Снимок экрана от 2022-04-22 00-21-33.png (50.85 КБ) 859 просмотров
P.S. В принципе, выбор текущей альтернативы можете делать и радиокнопками в GUI galternatives
Re: GCC версии
Добавлено: 22 апр 2022, 00:46
Olej
Olej писал(а): ↑22 апр 2022, 00:20
Изменяем:
Задача полностью разрешена.
Последнее:
В публикациях часто пишут: не изменяйте версию GCC, если текущая версия GCC версия которой компилировалось ядро системы не совпадают, то могут быть серьёзные проблемы.
Меня всё занимало: о чём это они?
Я так понимаю, что о том
крайне редком (исчезающе малой вероятности) когда:
- с компилятором GCC естественно устанавливается соответствующая ему версия
главной библиотеки C, библиотеки libc.so - системных вызовов.
- в библиотеке
могут быть
новые системные вызовы, которых не было в предыдущих ядра...
- если компилятор
ваш код скомпилирует на новый системный вызов - здесь крах,
приложения.
- если будет альтернативно выбрана более старая версия GCC (чем дефаултная), то таких конфликтов
быть не может - в kernel Linux
запрещено изменять формат вызова существующих системных вызовов и удалять старые неиспользуемые вызовы... это политика разработчиков ядра.