LINUX.ORG.RU

Gentoo +systemd -openrc

 , ,


0

1

Поставил Gentoo+xfce+systemd, в USE есть флаги systemd -openrc, все работало отлично, но понадобилось открыть в gpicview jpeg, а система была собрана без флага jpeg. Добавил в USE jpeg и сделал

emerge -avuDN world
emerge --depclean
После 2-й команды emerge предложил удалить openrc (хотя до этого я выполнял эту комманду как только поставил базовую систему и настроил make.conf и она мне не предлагала удалить openrc) я удалил так-как у меня все равно systemd. Теперь при установке любой программы пишет
checking whether the C compiler works... no
gcc установлен, gcc --version выводит следующее
 /usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
gcc-config: error: could not get compiler binary path: No such file or directory
Как исправить?

поставить назад openrc и немного подождать.

qnikst ★★★★★
()

Во первых напиши этим укуркам баг и что возникло оно после решения вот этого но его скорее всего удалят как дубль вот этого.

А временное решение:

> layman -o https://raw.github.com/canek-pelaez/gentoo-systemd-only/master/overlay.xml -f -a gentoo-systemd-only
> cd gentoo-systemd-only
> git checkout 2e075f7

Копируй в свой локальный оверлейчик оттуда как минимум sys-devel/gcc-config и sys-libs/elog-functions.

init_6 ★★★★★
()

Проблема решена. Решил так:

layman -o https://raw.github.com/canek-pelaez/gentoo-systemd-only/master/overlay.xml -f -a gentoo-systemd-only
emerge elog-functions
ln -s /usr/lib64/misc/elog-functions.sh /etc/init.d/functions.sh
gcc-config -f x86_64-pc-linux-gnu-4.7.3

Taetricus
() автор топика
2 июня 2015 г.
Ответ на: комментарий от Taetricus

Обновление gcc

Возникла такая же проблема. Но я ничего не удалял.

При обновлении мира, попросил обновить gcc
Ну и согласно статье

emerge -u sys-devel/gcc
слишком долго что-то мучало и в итоге на команду
gcc-config -l
gcc-config -l
/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: Нет такого файла или каталога
gcc-config: Could not source /etc/init.d/functions.sh!

yaxon
()
Ответ на: комментарий от Taetricus

пишут Необходимо обновить openrc:

emerge -C sysvinit
emerge -1 openrc
dispatch-conf
у меня вообще лажа получилась, будем исправлять
при обновлении потянуло за собой
>>> Emerging (1 of 2) sys-apps/sysvinit-2.88-r7
>>> Failed to emerge sys-apps/sysvinit-2.88-r7, Log file:
>>>  '/tmp/portage/sys-apps/sysvinit-2.88-r7/temp/build.log'
>>> Jobs: 0 of 2 complete, 1 failed                 Load avg: 0.28, 0.19, 0.21
 * Package:    sys-apps/sysvinit-2.88-r7
 * Repository: gentoo
 * Maintainer: base-system@gentoo.org
 * USE:        abi_x86_64 amd64 elibc_glibc kernel_linux userland_GNU
 * FEATURES:   preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
>>> Unpacking sysvinit-2.88dsf.tar.bz2 to /tmp/portage/sys-apps/sysvinit-2.88-r7/work
>>> Source unpacked in /tmp/portage/sys-apps/sysvinit-2.88-r7/work
>>> Preparing source in /tmp/portage/sys-apps/sysvinit-2.88-r7/work/sysvinit-2.88dsf ...
 * Applying sysvinit-2.86-kexec.patch ...
 [ ok ]
 * Applying sysvinit-2.86-shutdown-single.patch ...
 [ ok ]
 * Applying sysvinit-2.88-makefile.patch ...
 [ ok ]
 * Applying sysvinit-2.88-selinux.patch ...
 [ ok ]
 * Applying sysvinit-2.88-shutdown-h.patch ...
 [ ok ]
>>> Source prepared.
>>> Configuring source in /tmp/portage/sys-apps/sysvinit-2.88-r7/work/sysvinit-2.88dsf ...
>>> Source configured.
>>> Compiling source in /tmp/portage/sys-apps/sysvinit-2.88-r7/work/sysvinit-2.88dsf ...
make -j5 -C src 
make: Entering directory `/tmp/portage/sys-apps/sysvinit-2.88-r7/work/sysvinit-2.88dsf/src'
x86_64-pc-linux-gnu-gcc -march=corei7-avx -O2 -W -Wall -D_GNU_SOURCE  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE   -c -o init.o init.c
x86_64-pc-linux-gnu-gcc -march=corei7-avx -O2 -W -Wall -D_GNU_SOURCE  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DINIT_MAIN -c -o init_utmp.o utmp.c
x86_64-pc-linux-gnu-gcc -march=corei7-avx -O2 -W -Wall -D_GNU_SOURCE  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o halt.o halt.c
x86_64-pc-linux-gnu-gcc -march=corei7-avx -O2 -W -Wall -D_GNU_SOURCE  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o ifdown.o ifdown.c
x86_64-pc-linux-gnu-gcc -march=corei7-avx -O2 -W -Wall -D_GNU_SOURCE  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o hddown.o hddown.c
/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
gcc-config: error: could not get compiler binary path: No such file or directory
/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
gcc-config: error: could not get compiler binary path: No such file or directory
make: *** [init.o] Error 1
gcc-config: error: could not get compiler binary path: No such file or directory
make: *** Waiting for unfinished jobs....
make: *** [init_utmp.o] Error 1
make: *** [halt.o] Error 1
/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
gcc-config: error: could not get compiler binary path: No such file or directory
make: *** [ifdown.o] Error 1
/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
gcc-config: error: could not get compiler binary path: No such file or directory
make: *** [hddown.o] Error 1
make: Leaving directory `/tmp/portage/sys-apps/sysvinit-2.88-r7/work/sysvinit-2.88dsf/src'
 * ERROR: sys-apps/sysvinit-2.88-r7::gentoo failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=sys-apps/sysvinit-2.88-r7::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sys-apps/sysvinit-2.88-r7::gentoo'`.
 * The complete build log is located at '/tmp/portage/sys-apps/sysvinit-2.88-r7/temp/build.log'.
 * The ebuild environment file is located at '/tmp/portage/sys-apps/sysvinit-2.88-r7/temp/environment'.
 * Working directory: '/tmp/portage/sys-apps/sysvinit-2.88-r7/work/sysvinit-2.88dsf'
 * S: '/tmp/portage/sys-apps/sysvinit-2.88-r7/work/sysvinit-2.88dsf'

yaxon
()
Ответ на: комментарий от Taetricus

вот что дальше грозится

emerge --info '=sys-apps/sysvinit-2.88-r7::gentoo'
!!! No gcc found. You probably need to 'source /etc/profile'
!!! to update the environment of this terminal and possibly
!!! other terminals also.
Portage 2.2.8-r2 (default/linux/amd64/13.0/desktop, [unavailable], glibc-2.19-r1, 3.14.14-gentoo x86_64)
Как исправить ?

yaxon
()
Ответ на: Обновление gcc от yaxon

Я давно уже снёс Gentoo. Но раз у тебя проблема похожая на мою, почему бы тебе не попробовать применить решение которое использовал я, только заменив 4.7.3 на свою версию gcc.

Taetricus
() автор топика
Ответ на: Обновление gcc от yaxon

На данный момент самый простой способ решить это — установить sys-apps/gentoo-functions и создать симлинк /etc/init.d/functions.sh -> /lib/gentoo/functions.sh.

gentoo_root ★★★★★
()
Ответ на: комментарий от gentoo_root

симлинк сделал, но... При какой нибудь установке говорит

/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
gcc-config: error: could not get compiler binary path: No such file or directory
/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
/usr/bin/gcc-config: line 18: /etc/init.d/functions.sh: No such file or directory
gcc-config: Could not source /etc/init.d/functions.sh!
gcc-config: error: could not get compiler binary path: No such file or directory
make: *** [init.o] Error 1

yaxon
()
Ответ на: комментарий от gentoo_root

восстановление gcc

восстановил я так:
на другой машине сделал бинарник

emerge --ask --buildpkg sys-devel/gcc
перекинул его на ту машину, где сломался gcc и установил его
emerge -k gcc-4.8.4.tbz2

yaxon
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.