История изменений
Исправление
Moisha_Liberman,
(текущая версия)
:
от минут сорока, если почти не править make.conf и флаги. И до пары часов, если переписали сильно make.conf сделали emerge emerge app-portage/cpuid2cpuflags; echo «/ $(cpuid2cpuflags)» > /etc/portage/package.use/00cpu-flags
Последние две команды ставят пакет cpuid2cpuflags и применяют те флаги процессора, которые у Вас на Вашем проц есть, глобально. Это не означает что, например, если у Вас там есть sse4_2, то он всенепременно будет применён ко всем пакетам. Это означает что если этот флаг будет нужен какому-либо пакету, то он будет использован. Этот подход работает гарантированно на x86_64 (пофиг, Intel и AMD) и на ARM (на Raspberry Pi 2,3,4 работает, проверял лично). На остальных архитектурах типа MIPS* или ещё чего, нет, не работает.
И да. На 16Gb, я бы производил сборку в RAM. Даже с SSD. Вот Вам скриптец, он достаточно очевиден:
#!/bin/bash
MEMSIZE=90%
mounted=false
mounttmpfs() {
mount -t tmpfs tmpfs -o size=$MEMSIZE /var/tmp/portage
mounted="true"
}
emerging() {
echo "Emerging ${*}"
emerge ${*}
}
unmount() {
echo "Unmounting /var/tmp/portage"
umount -f /var/tmp/portage
}
echo "Mounting $MEMSIZE of memory to /var/tmp/portage"
if [ -z "$(mount | grep /var/tmp/portage)" ]
then
mounttmpfs
else
echo "WARNING! /var/tmp/portage already mounted"
exit 0
fi
emerging ${*}
if [ -n "$mounted" ]
then
unmount
fi
MEMSIZE по дефолту выкусывает 50% от существующей RAM, можно указать в абсолютных, можно как у меня, в относительных значениях.
Куда-нибудь сохраните как скрипт в путях, пользуйтесь невозбранно.
Удачной установки. =)))
Исходная версия
Moisha_Liberman,
:
Если не сильно извращаться, то
от минут сорока, если почти не править make.conf и флаги. И до пары часов, если переписали сильно make.conf сделали emerge emerge app-portage/cpuid2cpuflags; echo «/ $(cpuid2cpuflags)» > /etc/portage/package.use/00cpu-flags
Последние две команды ставят пакет cpuid2cpuflags и применяют те флаги процессора, которые у Вас на Вашем проц есть, глобально. Это не означает что, например, если у Вас там есть sse4_2, то он всенепременно будет применён ко всем пакетам. Это означает что если этот флаг будет нужен какому-либо пакету, то он будет использован.
И да. На 16Gb, я бы производил сборку в RAM. Даже с SSD. Вот Вам скриптец, он достаточно очевиден:
#!/bin/bash
MEMSIZE=90%
mounted=false
mounttmpfs() {
mount -t tmpfs tmpfs -o size=$MEMSIZE /var/tmp/portage
mounted="true"
}
emerging() {
echo "Emerging ${*}"
emerge ${*}
}
unmount() {
echo "Unmounting /var/tmp/portage"
umount -f /var/tmp/portage
}
echo "Mounting $MEMSIZE of memory to /var/tmp/portage"
if [ -z "$(mount | grep /var/tmp/portage)" ]
then
mounttmpfs
else
echo "WARNING! /var/tmp/portage already mounted"
exit 0
fi
emerging ${*}
if [ -n "$mounted" ]
then
unmount
fi
MEMSIZE по дефолту выкусывает 50% от существующей RAM, можно указать в абсолютных, можно как у меня, в относительных значениях.
Куда-нибудь сохраните как скрипт в путях, пользуйтесь невозбранно.
Удачной установки. =)))