LINUX.ORG.RU

Наконец реализован Multiarch в debian/ubuntu

 , , , ,


0

1

Свершилось давно ожидаемое великое событие — доделан multiarch в основанных на deb дистрибутивах.

Работа над ним была долгой, но получилось нечто существенно более продвинутое, чем в дистрибутивах, основанных на RPM:

  • возможность устанавливать библиотеки для любой архитектуры в любую;
  • окружение кросс-компиляции соответствует окружению «родной» компиляции;
  • эмулируемая система выглядит как обычная.

И многое другое.

Теперь осталось только внести всё, что необходимо в unstable ветку дистрибутива, согласно плану.

>>> ссылка на описание

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

loki_> в amd64 системе сможешь собирать и ставить с зависимостями и прочими финтифлюшками arm-пакеты, к примеру

Тогда эта штука мне позарез нужна.

Quasar ★★★★★ ()

Оно выйдет в свет как раз тогда, когда проблема станет неактуальной %)

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

> Спецификации, увы, не покрывают некоторых сценариев использования (содержат, зачем-то искусственные ограничения), неинтуитивны и нелегки в (правильной) реализации.

А можно подробнее, особенно об исскусственных ограничениях?

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

>Ты сам как это себе представляешь?

man fatelf

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

>А как бинарные arm пакеты будут работать на amd64?

man qemu

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

man количество поддерживаемых архитектур

Deleted ()

Вот в Debian торопыги старательные! Всё-таки сделали то, что уже давно есть в Archlinux, и многих других современных дистрах. Скорость разработки Debian скоро станет притчей. Когда они перейдут на нормальный rolling-release?

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

Разве? Судя по спецификации ELF, которую изменили для реализации multiarch, теперь один пакет может содержать приложение, которое без плясок с бубном будет работать на нескольких архитектурах. Значит, библиотеки и lib-файлы из репозитария multiarch будут подходить для пакетов для разных архитектур(мы то помним, что заголовочные файлы и исходники по своей природе и так кросс-платформенны). Судя по беглому прочтению текста, это так и есть. А для запуска non-native кода можно заюзать Quemu. Очень часто это помогает тестировать портируемый пакет, не имея железа, под которое пакет будет собран.

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

> Судя по спецификации ELF, которую изменили для реализации multiarch

Количество знатоков в этом треде радует. Как насчет ссылки на «изменение спецификации ELF»?

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

В спецификации (на сегодня) есть три типа Multi-Arch пакетов. Так вот, некоторые типы не совместимы (не могут зависеть (Depends и т.д.) друг от друга). Это приводит к тому, что не всем пакетам такая спецификация подойдёт. Один из случаев «оно здесь не подойдёт» подтвердил разработчик спецификации лично.

Также, в текущей спецификации невозможно указать зависимости *-dbg-пакетов к Multi-Arch бинарникам.

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

> Разве? Судя по спецификации ELF, которую изменили для реализации multiarch... и далее по тексту

спецификацию elf поменяли чтобы проприетарщики могли поставлять свои проприетарные поделия в одном неповторимом экземпляре.

от того что появился fatelf количество или содержимое пакетов в дебиане не поменялось.

суть в том что в одну систему можно поставить обычные неизменённые пакеты из другой архитектуры.

библиотеки и lib-файлы

учиться учиться и учится

gena2x

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

> Один из случаев «оно здесь не подойдёт» подтвердил разработчик спецификации лично.

А эта беседа есть где-нибудь в архивах?

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

Дело было в IRC. Спроси у сопровождающего пакета 'mlton', про него был разговор.

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

>А как бинарные arm пакеты будут работать на amd64?

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

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

> Всё-таки сделали то, что уже давно есть в Archlinux Скорость разработки Debian скоро станет >притчей. Когда они перейдут на нормальный rolling-release?
Очевидно когда Arch-разрабы смогут смогут выпустить релиз.

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

>red hat на arm?

Про RHEL не скажу, а проект Fedora-arm живёт себе спокойно и здравствует.

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

Если я пойду на джаву, то только с рогатиной... завалю и закопаю!

Слово «лицензия» имеет не один смысл. Охотбилет не забудь :)

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

> В редхате это можно делать лет пять как, наверное. Слоупоки :)

И что, если я поставлю на amd64 федоре arm'овый бинарник, то yum для меня вытянет и поставит все arm'овые библиотеки от которых он зависит?

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

> И что, если я поставлю на amd64 федоре arm'овый бинарник, то yum для

меня вытянет и поставит все arm'овые библиотеки от которых он зависит?

Имено так. Равно как и если ты захочешь поставить на i386 машину, например, бинарь от s390. Будут стоять две архитектуры и всё будет работать. Я удивлён, что для кого-то это откровение.

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

>> И что, если я поставлю на amd64 федоре arm'овый бинарник, то yum для меня вытянет и поставит все arm'овые библиотеки от которых он зависит?

Имено так. Равно как и если ты захочешь поставить на i386 машину, например, бинарь от s390. Будут стоять две архитектуры и всё будет работать. Я удивлён, что для кого-то это откровение.

Интересно. И куда он arm'овый, например, libc.so.<номер> ставит на amd64, если не секрет?

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

Ну так вот тут http://icculus.org/fatelf/ можно почитать. Просто и доступным языком описано, как код для разных архитектур упаковываются в один универсальный бинарь, наподобие тех блобов для MacOS X, которые могут работать и на x86, и на PowerPC. И этот формат позволяет не использовать кучу бинарей для различных архитектур, а использовать один бинарь или библиотеку для нескольких архитектур. Это как раз и используют в Archlinux. Что не так?

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

ниосилятор, что ли? сиди дальше пиши на своем пыхе.

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

> ... бинарей для различных архитектур, а использовать один бинарь или библиотеку для нескольких архитектур. Это как раз и используют в Archlinux. Что не так?

дебиан поддерживает 10 архитектур. Размер только /usr/bin у меня 800Mb, иметь вместо этого 8Гб меня не устраивает. Всё это занимает место на диске, жрёт интернет канал при обновлениях, бэкапах и копированиях и любых иных действиях. Дистрибутив дебиана занимает 17Гб. Никто не обрадуется если он станет занимать 50Гб.

для того кто скажет что «столько не надо» Лично _я_ _дома_ пользуюсь 4 архитектурами - x86, amd64, mips, armel, планирую заюзать ещё armhf.

gena2x

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

Понял теперь в чём соль. Конечно, не обрадуется. Но с multilib приходится мириться, ведь есть вещи вроде skype-которые просто не понимают, что поезд i386 давно прошёл. А FatELF пригодится для создателей проприетарных драйверов и игр.

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

>> Если я пойду на джаву, то только с рогатиной... завалю и закопаю!

Слово «лицензия» имеет не один смысл. Охотбилет не забудь :)


GPL2 запрещает охоту на подлицензионный программный код?

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

>> Если я пойду на джаву, то только с рогатиной

ниосилятор, что ли?


Простите, я даже пробовать не буду... не охота руки марать... разве что палочкой потыкать...

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

>> Размер только /usr/bin у меня 800Mb

Жесть о_О

~ % du /usr/bin/
3.8M	/usr/bin/mh
116M	/usr/bin/

>> Дистрибутив дебиана занимает 17Гб.

М?

~ % du -c misc/iso/lenny_{1..5}.iso
4.4G	misc/iso/lenny_1.iso
4.4G	misc/iso/lenny_2.iso
4.4G	misc/iso/lenny_3.iso
4.4G	misc/iso/lenny_4.iso
1.6G	misc/iso/lenny_5.iso
20G	total
~ % du -c misc/iso/squeeze_*
4.4G	misc/iso/squeeze_1.iso
4.4G	misc/iso/squeeze_2.iso
4.4G	misc/iso/squeeze_3.iso
4.4G	misc/iso/squeeze_4.iso
4.4G	misc/iso/squeeze_5.iso
4.4G	misc/iso/squeeze_6.iso
4.4G	misc/iso/squeeze_7.iso
708M	misc/iso/squeeze_8.iso
32G	total
GotF ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.