LINUX.ORG.RU

Генту, новый мультилиб и все-все-все

 ,


0

3

Привет, ЛОР! На днях засинкался на своей генте и в news'ах прочитал, а потом и при попытке обновления заметил новость про переход на новый мультилиб. Теперь предлагается прописывать юз для сборки 32-битной версии или для каждого пакета отдельно или глобально для всей системы. В первом случае можно автоматически вписать в package.use юзы для всех установленных пакетов (а это ~800 строк) или прописать глобально для всей системы (а это оверхед - соберутся 32-битные версии даже тех пакетов, что не нужны). Как бы запилить чтобы было как раньше (если какой-то пакет требует 32 битную версию другого - собирается, а если не требуется - только 64-битная).

★★★★★

~800 строк

эм

$ grep --count abi_x86_32 /etc/portage/package.use
59
попробуй глобально выставить -abi_x86_32 и потом включать попакетно. ещё есть такая зачётная штука, как USE="-* чтонужно"

anonymous
()

офигеть, ты 5 звёзд задом заработал, что ли?
ABI_X86=«64 32» -> make.conf
*/* abi_x86_32 -> package.use

а лучше только для пакетов, это требующих.

Deleted
()

Там до сих пор не все пакеты в стабильной ветке это поддерживают. Мне пришлось размаскировать Qt 4.8.6-r1.

Black_Shadow ★★★★★
()

Как бы запилить чтобы было как раньше (если какой-то пакет требует 32 битную версию другого - собирается, а если не требуется - только 64-битная).

Так никогда не было. Раньше если кто-то хотел 32-битную либу, устанавливались бинарные emul-linux-x86.

Кстати, новый мультилиб имеет один очень неприятный недостаток: невозможность задать разные наборы USE-флагов для 32-битной и 64-битной сборки. Поэтому всё равно вылезают лишние 32-битные зависимости, от которых можно было бы избавиться, если задать разные USE-флаги.

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

ABI_X86=«64 32» -> make.conf
*/* abi_x86_32 -> package.use

достаточно любого одного из этого. новость для eselect news писал кто-то упоротый

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

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

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

само собой. считал, что и так ясно.

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

...наоборот - он наверное посчитал, что тут и так всё понятно, незачем говорить об очевидных вещах...

anonymous
()

Новость была аж 28 числа. В чём проблема? В ABI_X86 умеют не все пакеты, а которые умеют, пусть собираются в оба — 32 и 64. Судя по всему, у тебя штабильная ветка, и обновляешься ты не так часто, как я, потому тебе это не критично.

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

а лучше только для пакетов, это требующих.

Писал же что слишком запарно, много строк в package.use

*/* abi_x86_32 -> package.use

Тогда все пакеты (у которых есть такая возможность) будут собираться и в 32, а мне абсолютно все в 32 не нужны.

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

попробуй глобально выставить -abi_x86_32 и потом включать попакетно. ещё есть такая зачётная штука, как USE="-* чтонужно"

Про это я знаю, но даже 59 строк в package.use только для того чтобы собрать нужные, например, какому-нибудь вайну и скайпу либы и в 32-битном варианте - не комильфо.

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

emerge --autounmask-write пропишет всё за тебя, ничего запарного

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

когда я переходил на abi_x86_32, то добавлял по необходимости, а это для wine, mesa, skype, alsa и из зависимостей, получилось для 121 пакета. заняло менее получаса времени.

если так не комильфо, то что тебе надо-то?

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

Сейчас включено глобально с момента появления фичи в зачатке. Планирую выкинуть 32 бита совсем, поскольку 32 битный софт не использую. Принимаю ставки, что сломается первым из-за всяких циклических зависимостей.

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

это конкретно скайп тащит qt с потрохами

anonymous
()

У меня в итоге получилось совсем немного. Только зря боялся.

x11-proto/xf86bigfontproto abi_x86_32
x11-proto/xextproto abi_x86_32
x11-libs/libX11 abi_x86_32
x11-proto/xcb-proto abi_x86_32
sys-libs/gpm abi_x86_32
dev-libs/libpthread-stubs abi_x86_32
x11-libs/libXau abi_x86_32
x11-proto/xproto abi_x86_32
x11-proto/inputproto abi_x86_32
x11-libs/libXext abi_x86_32
x11-proto/kbproto abi_x86_32
sys-libs/ncurses abi_x86_32
x11-libs/libXdmcp abi_x86_32
x11-libs/libxcb abi_x86_32

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

для зависимостей Скайпа нет, вот и список меньше

Deleted
()

~800 строк

┌─[vonavi@desktop] - [~] - [2015-03-31 19:49:31]
└─[0] <> cat /etc/portage/package.use/multilib | grep -v '^#' | wc -l
61
iVS ★★★★★
()
Ответ на: комментарий от iVS

С комментариями портажа какой пакет что за собой тянет - получается овер 800 %)

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