LINUX.ORG.RU

[gentoo][хочется странного] emerge --root=/tools

 ,


0

1

Хочу установить некоторые пакеты в /tools Но например если написать к примеру

$emerge emacs -avkb --root=/tools -p
Calculating dependencies      ... done!        
[binary  N     ] sys-libs/ncurses-5.9 to /tools/ USE="cxx unicode -ada -debug -doc -gpm -minimal -profile -static-libs -trace" 0 kB                                                                                                     
[binary  N     ] virtual/libintl-0 to /tools/ 0 kB
[binary  N     ] sys-apps/sed-4.2.1-r1 to /tools/ USE="-acl -nls (-selinux) -static" 0 kB
[binary  N     ] sys-libs/zlib-1.2.5.1-r2 to /tools/ USE="minizip -static-libs" 0 kB
[binary  N     ] sys-apps/util-linux-2.19.1-r1 to /tools/ USE="nls -cramfs -crypt -loop-aes -ncurses -old-linux -perl (-selinux) -slang (-uclibc) -unicode" 0 kB                                                                        
[binary  N     ] app-arch/bzip2-1.0.6-r3 to /tools/ USE="-static -static-libs" 0 kB
[binary  N     ] sys-apps/attr-2.4.46-r1 to /tools/ USE="-nls -static-libs" 0 kB
[binary  N     ] x11-proto/xproto-7.0.22 to /tools/ USE="-doc" 0 kB
[binary  N     ] x11-proto/xextproto-7.2.0 to /tools/ USE="-doc" 0 kB
[binary  N     ] x11-libs/xtrans-1.2.6 to /tools/ USE="-doc" 0 kB
[binary  N     ] x11-proto/kbproto-1.0.5 to /tools/ 0 kB
[binary  N     ] app-misc/mime-types-8 to /tools/ 0 kB
[binary  N     ] dev-libs/expat-2.0.1-r5 to /tools/ USE="-examples -static-libs" 0 kB
[binary  N     ] sys-libs/gpm-1.20.6 to /tools/ USE="(-selinux)" 0 kB
[binary  N     ] x11-misc/xbitmaps-1.1.1 to /tools/ 0 kB
[binary  N     ] x11-proto/xf86bigfontproto-1.2.0 to /tools/ 0 kB
[binary  N     ] x11-proto/inputproto-2.0.2 to /tools/ 0 kB
[binary  N     ] dev-libs/libpthread-stubs-0.3 to /tools/ USE="-static-libs" 0 kB
[binary  N     ] dev-libs/libffi-3.0.10 to /tools/ USE="-debug -static-libs -test" 0 kB
[binary  N     ] sys-apps/sandbox-2.5 to /tools/ USE="(multilib)" 0 kB
[binary  N     ] app-misc/pax-utils-0.2.3 to /tools/ USE="-caps" 0 kB
[binary  N     ] sys-libs/readline-6.2_p1 to /tools/ 0 kB
[binary  N     ] app-shells/bash-4.2_p10 to /tools/ USE="nls -afs -bashlogger -examples -mem-scramble -net -plugins -vanilla" 0 kB                                                                                                      
[binary  N     ] sys-apps/acl-2.2.51 to /tools/ USE="nls (-nfs) -static-libs" 0 kB
[binary  N     ] dev-libs/popt-1.16-r1 to /tools/ USE="nls -static-libs" 0 kB
[binary  N     ] x11-libs/libICE-1.0.7 to /tools/ USE="-doc -ipv6 -static-libs" 0 kB
[binary  N     ] virtual/libffi-0 to /tools/ 0 kB
[binary  N     ] x11-libs/libXdmcp-1.1.0 to /tools/ USE="-doc -static-libs" 0 kB
[binary  N     ] x11-libs/libXau-1.0.6 to /tools/ USE="-static-libs" 0 kB
[binary  N     ] sys-apps/coreutils-8.14 to /tools/ USE="acl -caps -gmp -nls (-selinux) -static -unicode -vanilla -xattr" 0 kB                                                                                                          
[binary  N     ] net-misc/rsync-3.0.9 to /tools/ USE="-acl -iconv -ipv6 -static -xattr" 0 kB
[binary  N     ] x11-libs/libSM-1.2.0 to /tools/ USE="uuid -doc -ipv6 -static-libs" 0 kB
[binary  N     ] app-admin/eselect-1.2.18 to /tools/ USE="-doc" 0 kB
[binary  N     ] app-admin/eselect-python-20100321 to /tools/ 0 kB
[binary  N     ] sys-apps/file-5.09 to /tools/ USE="-python -static-libs -zlib" 0 kB
[binary  N     ] dev-lang/python-3.2.2 to /tools/ USE="ncurses readline threads (wide-unicode) xml -build -doc -examples -gdbm -ipv6 -sqlite -ssl -tk -wininst" 0 kB                                                                    
[binary  N     ] sys-apps/portage-2.1.10.32 to /tools/ USE="(ipc) -build -doc -epydoc -python2 -python3 (-selinux)" LINGUAS="-pl" 0 kB
[binary  N     ] app-admin/python-updater-0.9-r1 to /tools/ 0 kB
[binary  N     ] dev-lang/python-2.7.2-r3 to /tools/ USE="ncurses readline threads (wide-unicode) xml -berkdb -build -doc -examples -gdbm -ipv6 -sqlite -ssl -tk -wininst" 0 kB
[binary  N     ] x11-proto/xcb-proto-1.6-r1 to /tools/ 0 kB
[binary  N     ] x11-libs/libxcb-1.7 to /tools/ USE="-doc (-selinux) -static-libs" 0 kB
[binary  N     ] x11-libs/libX11-1.4.4 to /tools/ USE="-doc -ipv6 -static-libs -test" 0 kB
[binary  N     ] x11-libs/libXt-1.1.1 to /tools/ USE="-static-libs" 0 kB
[binary  N     ] x11-libs/libXext-1.3.0 to /tools/ USE="-doc -static-libs" 0 kB
[binary  N     ] x11-libs/libXmu-1.1.0 to /tools/ USE="-doc -ipv6 -static-libs" 0 kB
[binary   R    ] app-editors/emacs-23.3-r2 to /tools/ USE="X gpm -Xaw3d -alsa (-aqua) -athena -dbus -gconf -gif -gtk -gzip-el -hesiod -jpeg -kerberos -livecd -m17n-lib -motif -png -sound -source -svg -tiff -toolkit-scroll-bars -xft -xpm" 0 kB                                                                                                          
Total: 46 packages (45 new, 1 reinstall, 46 binaries), Size of downloads: 0 kB
Если же просто
emerge emacs -avkb  -p
Calculating dependencies                    ... done!
[binary  N     ] net-libs/liblockfile-1.08  0 kB
[binary  N     ] app-admin/eselect-ctags-1.13  0 kB
[binary  N     ] app-admin/eselect-emacs-1.13  0 kB
[binary  N     ] app-emacs/emacs-common-gentoo-1.2-r2  USE="X -emacs22icons" 0 kB
[binary  N     ] app-editors/emacs-23.3-r2  USE="X gpm -Xaw3d -alsa (-aqua) -athena -dbus -gconf -gif -gtk -gzip-el -hesiod -jpeg -kerberos -livecd -m17n-lib -motif -png -sound -source -svg -tiff -toolkit-scroll-bars -xft -xpm" 0 kB
[binary  N     ] virtual/emacs-23  0 kB

Total: 6 packages (6 new, 6 binaries), Size of downloads: 0 kB
Насколько я понял он воспринимает /tools как новую систему и тянет все зависимости.Решилось так: сделал emerge для всех 6 пакетов с параметром -O (без зависимостей)

Так же сделал для monodevelop (51 пакет), но ругается:

Emerging (3 of 51) gnome-base/libglade-2.6.4 for /tools/
 * libglade-2.6.4.tar.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                    [ ok ]
 * ERROR: gnome-base/libglade-2.6.4 failed (setup phase):
 *   python_set_active_version(): '=dev-lang/python-2*' is not installed
Но python2.7 установлен. (насколько я понял требуется чтоб он был в /tools) Вопросы:
1. можно обойти грабли с установкой пакетов? (чтоб не нужно было перечислять все зависимости и устанавливать с параметром -O)
2. Как установить gnome-base/libglade
3. Написал в /etc/profile
LD_LIBRARY_PATH=/tools/usr/lib64/
export LD_LIBRARY_PATH
...
PATH="/tools/usr/bin:$(PATH)"
...
Так правильно??

★★★★

Последнее исправление: ymuv (всего исправлений: 1)
Ответ на: комментарий от Lighting

Это

Зачем ты это хочешь сделать?

пример неправильного вопроса заданного гентушнику. Он знает зачем ему это нужно.

А на вопрос как этого достичь прямо отвечает man ebuild в секции --root=DIR

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

man ebuild не нашел --root в man portage

--root=DIR
 Set the ROOT environment variable.

--root-deps[=rdeps]
If no argument is given then build-time dependencies of packages for ROOT are installed to ROOT instead of /.
If the rdeps argument is given then discard all build-time dependencies of packages for ROOT. This option  is  only  meaningful  when  used  together with ROOT and it should not be enabled under normal circumstances. For currently supported EAPI values, the build-time dependencies are specified in the DEPEND  variable.  However, behavior may change for new EAPIs when related extensions are added in the future.
Кроме того, если править ебилд, то например, если пакет потянет несколько пакетов за собой, то править каждый из них??

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

Кроме того, если править ебилд, то например, если пакет потянет несколько пакетов за собой, то править каждый из них??

Есть Filesystem Hierarchy Standard которому следует gentoo если тебе надо как то иначе чем это придусмотрено в FHS для этого придумана опция --root=

А «править» все что ты желаешь запихнуть по нестандартному пути вместе с тем от чего оно зависит.

init_6 ★★★★★
()

>Насколько я понял он воспринимает /tools как новую систему и тянет все зависимости.
ну и что не так?

насколько я понял требуется чтоб он был в /tools

именно
как ты себе представляешь работу софта без runtime зависимостей, например?

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

megabaks

как ты себе представляешь работу софта без runtime зависимостей, например?

А он все соберет большими, толстыми, жирными статично собранными бинарниками ага

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

Вернее если пакет есть уже в системе, emerge не устанавливал его в /tools, если же нет устанавливал в /tools.

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

На примере

Emerging (3 of 51) gnome-base/libglade-2.6.4 for /tools/
 * libglade-2.6.4.tar.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                    [ ok ]
 * ERROR: gnome-base/libglade-2.6.4 failed (setup phase):
 *   python_set_active_version(): '=dev-lang/python-2*' is not installed
emerge ищет python-2* в /tools, если не находит ищет в /, если нашло установка продолжается и используется python2.7 с /

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