Custom-gcc: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
м (→‎Ссылки: добавлена ссылка на custom-gcc7 в p8)
Строка 26: Строка 26:


[http://git.altlinux.org/gears/g/gcc4.8.git?p=gcc4.8.git;a=shortlog;h=refs/heads/c7.1 custom-gcc4.8 на git.altlinux.org]<br>
[http://git.altlinux.org/gears/g/gcc4.8.git?p=gcc4.8.git;a=shortlog;h=refs/heads/c7.1 custom-gcc4.8 на git.altlinux.org]<br>
[http://git.altlinux.org/gears/g/gcc5.git?p=gcc5.git;a=shortlog;h=refs/heads/c7.1 custom-gcc5 на git.altlinux.org]
[http://git.altlinux.org/gears/g/gcc5.git?p=gcc5.git;a=shortlog;h=refs/heads/c7.1 custom-gcc5 на git.altlinux.org]<br>
 
[http://git.altlinux.org/gears/g/gcc7.git?p=gcc7.git;a=shortlog;h=refs/heads/p8 custom-gcc7 в p8 на git.altlinux.org]
[[Категория:Packaging]]
[[Категория:Packaging]]

Версия от 10:36, 23 августа 2019

custom-gcc<version> - вариант пакета gcc<version>, который может быть использован в ветвях Sisyphus, основная версия gcc которых не соответствует требованиям, которые предъявляются пакетом, собираемым в данную ветвь, т.е. custom-gcc имеет большую версию чем самый новый gcc данной ветви.

Требуемые изменения spec-файла собираемого пакета

При использовании custom-gcc для сборки пакета, в spec-файл данного пакета следует внеcти следующие изменения:

  1. Удалить все упоминания gcc* (gcc, gcc-c++ и прочее);
  2. Добавить в описание зависимостей следующие строки (номер версии может отличаться, в примере используется версия 5 - здесь и далее):
    BuildRequires: custom-gcc5-c++
    %define psuffix -5
    %define __cc %_bindir/gcc%psuffix
    %define __cxx %_bindir/g++%psuffix
  3. При необходимости сборки пакета с новыми версиями стандартных библиотек, следует указать на них зависимости (для других библиотек - libatomic, libasan и прочих - аналогично):
    Requires: custom-libgcc1 >= 5
    Requires: custom-libstdc++6 >= 5
  4. Добавить в секцию %build указание используемых компиляторов:
    export CC="%__cc"
    export CXX="%__cxx"
  5. При необходимости сборки пакета с новыми версиями библиотек, поставляемых в составе custom-gcc, следует указать путь к каталогу, в котором они все расположены (%_libdir/custom-gcc/, независимо от версии custom-gcc):
    export LDFLAGS="-Wl,-rpath,%_libdir/custom-gcc/"

Ссылки

custom-gcc4.8 на git.altlinux.org
custom-gcc5 на git.altlinux.org
custom-gcc7 в p8 на git.altlinux.org