При переходе на более новую версию Gnome могут возникнуть следующие трудности компиляции пакетов:
1) Для компиляции пакета intltool нужен пакет dev-perl/XML-Parser. При его отсутствии возникает следующая ошибка компиляции:
checking whether make sets $(MAKE)... yes
checking for perl... /usr/bin/perl
checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool
!!! Please attach the following file when filing a report to bugs.gentoo.org:
!!! /var/tmp/portage/dev-util/intltool-0.35.5/work/intltool-0.35.5/config.log
*
* ERROR: dev-util/intltool-0.35.5 failed.
* Call stack:
* ebuild.sh, line 1701: Called dyn_compile
* ebuild.sh, line 1039: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* ebuild.sh, line 706: Called econf
* ebuild.sh, line 638: Called die
* The specific snippet of code:
* die "econf failed"
* The die message:
* econf failed
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/dev-util/intltool-0.35.5/temp/build.log'.
*
* Messages for package dev-util/intltool-0.35.5:
*
* ERROR: dev-util/intltool-0.35.5 failed.
* Call stack:
* ebuild.sh, line 1701: Called dyn_compile
* ebuild.sh, line 1039: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* ebuild.sh, line 706: Called econf
* ebuild.sh, line 638: Called die
* The specific snippet of code:
* die "econf failed"
* The die message:
* econf failed
2) Может возникнуть проблема с inotify - например при компиляции gnome-menus:
configure: error: No inotify syscalls in libc found - cannot enable inotify support
* ERROR: gnome-base/gnome-menus-2.20.3 failed.
* Call stack:
* ebuild.sh, line 1642: Called dyn_compile
* ebuild.sh, line 988: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* ebuild.sh, line 1327: Called gnome2_src_compile
* gnome2.eclass, line 70: Called gnome2_src_configure
* gnome2.eclass, line 66: Called econf '--enable-inotify' '--disable-debug' '--enable-python'
* ebuild.sh, line 591: Called die
* econf failed
Нужно удостовериться, что в ядре включена поддержка inotify:
grep INOTIFY /usr/src/linux/.config
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
Далее нужно обновить пакет sys-kernel/linux-headers, после чего пересобрать glibc
3)В процессе установки новой версии gnome будет установлена новая версия библиотеки dev-libs/expat, отвечающей за парсинг XML.
При этом обновлении происходит удаление старой библиотеки libexpat.so.0, на которую ссылается очень много пакетов - в частности gnome-terminal.
Поэтому до начала апдейта этой библиотеки рекомендуется открыть терминал, с помощью которого запустить программу revdep-rebuild из пакета
app-portage/gentoolkit, которая найдет все пакеты, ссылающиеся на эту библиотеку и переустановит их.
4) После апдейта библиотеки dev-libs/expat до версии 2.0.x возможны проблемы с компиляцией библиотек pango и gtk+:
* ERROR: x11-libs/pango-1.18.4 failed.
* Call stack:
* ebuild.sh, line 1695: Called dyn_compile
* ebuild.sh, line 1033: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* ebuild.sh, line 1377: Called gnome2_src_compile
* gnome2.eclass, line 71: Called die
* The specific snippet of code:
* emake || die "compile failure"
* The die message:
* compile failure
Для преодоления этой ошибки нужно сделать следующее:
emerge fontconfig
emerge pango
emerge gtk+