LINUX.ORG.RU

Медленная сборка пакетов в Gentoo

 ,


0

1

Новичок, поставил Gentoo можно сказать по приколу. Уж больно медленно все делается через Emerge, может можно как нибудь ускорить, я читал только про способ с кешированием, но он подходит когда много раз собираешь пакет, хотя бы то что можно запускать несколько emerge, в отличие от apt, как нибудь распараллелить.


Ответ на: комментарий от Jeron

это сборка в 4 потока -_- не даже не так а сборка до 4 пакетов одновременно в случае опций емерджа --jobs=n и -jn одноитоже он думаю имел ввиду что надо задать правильный makeopts в make.conf и пускать емердж в 4 задачи.

Thero ★★★★★
()
Последнее исправление: Thero (всего исправлений: 1)

Новичок не читающий документацию не нужен в gentoo.

hizel ★★★★★
()

Медленная сборка пакетов в Gentoo

С документацией и манами ознакомился и тесты уже произвел и их результаты предоставить не проблема?

init_6 ★★★★★
()

по работе emerge есть интереснейшая документация man emerge && man portage, всё остальное есть на вики.

Также в помощь: http://en.gentoo-wiki.com/wiki/Portage_TMPDIR_on_tmpfs для извлечения 3-10% профита времени сборки и жизни харда.

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

Да, в мире и так холодно, а тут появляются люди, которые не могут сделать его теплее даже при условии того, что у них есть маны и прочая документация. :(

mahalaka ★★
()

другие компы мощнее с гентой имеешь? тогда гугли distcc. самая главная красава генты что она может собирать пакеты с помощью сети компьютеров, причем архитектуры процессоров могут быть любыми

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

в случае опций емерджа --jobs=n и -jn одноитоже

Бред же.

--jobs=X -jY даст возможность одновременно собирать X пакетов в Y потоков каждый.

HTaeD ★★★★
()

может можно как нибудь ускорить

debian /thread

anonymous
()
Ответ на: комментарий от HTaeD

--jobs=X -jY даст возможность одновременно собирать X пакетов в Y потоков каждый.

$ man emerge
...
-j [JOBS], --jobs[=JOBS]
Specifies the number of packages to build simultaneously.
...

Корим новичка что не читает маны, а сами...

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

не пори чушь
тебе всё правильно написали
ключики " --jobs=n и -jn" это один и тот же ключ
он есть и у make и портажа
в твоём варианте

--jobs=X -jY даст возможность одновременно собирать X пакетов в Y потоков каждый.

--jobs=X == -jX заданный для портажа овер EMERGE_DEFAULT_OPTS или при вызове emerge
-jY == --jobs=Y заданный для make овер MAKEOPTS

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

Ты не видишь разницы между указанными тебе переменными окружения?!

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

Братюнь, make может заускать несколько процессов компилера, и одновременно portage может заускать несколько make, улавливаешь?

anonymous
()

Кусок моего make.conf:

#Количество потоков на 1 пакет
MAKEOPTS="-j8"

#Параметры для команды emerge (--jobs = кол-во одновременно обрабатываемых пакетов)
#Предложение автоматической размаскировки пакетов (--autounmask-write=y)
#Продолжение установки пакетов даже в случае неудачной сборки одного пакета (--keep-going)
EMERGE_DEFAULT_OPTS="${EMERGE_DEFAULT_OPTS} --jobs=1 --autounmask-write=y --keep-going"

#Параллельная загрузка файлов
FEATURES="parallel-fetch"

#Включение распределенной компиляции
#FEATURES="${FEATURES} distcc"

#Серверы для распределенной компиляции (DISTCC_HOSTS="адрес сервера/кол-во_потоков,сжатие следующий_адрес/потоки,сжатие")
#DISTCC_HOSTS="192.168.0.155/12,lzo "

#Временый каталог для распределенной компиляции
#DISTCC_DIR="/tmp/.distcc"

#Включение проверки рапределенной компиляции для отладки
#DISTCC_VERBOSE="1"
glibych ★★
()
Ответ на: комментарий от megabaks

man emerge:

       -j [JOBS], --jobs[=JOBS]
              Specifies  the number of packages to build simultaneously.
              If this option is given without an argument,  emerge  will
              not  limit the number of jobs that can run simultaneously.
              Also see the related --load-average option.  Similarly  to
              the  --quiet-build  option,  the  --jobs option causes all
              build output to be redirected to logs.  Note that interac‐
              tive  packages currently force a setting of --jobs=1. This
              issue   can   be   temporarily   avoided   by   specifying
              --accept-properties=-interactive.

man make:

       -j [jobs], --jobs[=jobs]
            Specifies the number of jobs (commands) to run simultaneously.  If
            there  is  more than one -j option, the last one is effective.  If
            the -j option is given without an argument, make  will  not  limit
            the number of jobs that can run simultaneously.

P.S.

Это не одно и то же, хотя параметры обозначаются одинаково, но прописываются в разных переменных.

glibych ★★
()
Последнее исправление: glibych (всего исправлений: 2)

mount -t tmpfs -o size=10G /var/tmp/portage

и компилируется со свистом

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