Форум русскоязычного сообщества Ubuntu


За новостями русскоязычного сообщества и Ubuntu в целом можно следить на нашей страничке в Google+

Автор Тема: Как собрать deb i386 на amd64?  (Прочитано 1277 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн inhab

  • Автор темы
  • Участник
  • *
  • Сообщений: 104
    • Просмотр профиля
Как собрать deb i386 на amd64?
« : 31 Октябрь 2016, 13:51:53 »
Погуглил-пояндексил, не нашел/осилил  :-[
Поделитесь рецептом.
Собираю так
dpkg-buildpackage -rfakerootВсе собирается на ура, как собрать для i386?

Онлайн bezbo

  • Активист
  • *
  • Сообщений: 447
    • Просмотр профиля
Re: Как собрать deb i386 на amd64?
« Ответ #1 : 31 Октябрь 2016, 15:01:05 »
sudo pbuilder --create --architecture i386

Оффлайн inhab

  • Автор темы
  • Участник
  • *
  • Сообщений: 104
    • Просмотр профиля
Re: Как собрать deb i386 на amd64?
« Ответ #2 : 31 Октябрь 2016, 18:21:26 »
sudo pbuilder --create --architecture i386
Пошуршало. Но после сборки i386 не появился.
Может собирать нужно по другому?

Онлайн bezbo

  • Активист
  • *
  • Сообщений: 447
    • Просмотр профиля
Re: Как собрать deb i386 на amd64?
« Ответ #3 : 31 Октябрь 2016, 18:42:05 »
It is possible to use fakechroot instead of being root to run pbuilder; however, several things make this impractical. fakechroot overrides library loads and tries to override default libc functions when providing the functionality of virtual chroot. However, some binaries do no use libc to function, or override the overriding provided by fakechroot. One example is ldd. Inside fakechroot, ldd will check the library dependency outside of the chroot, which is not the expected behavior.

To work around the problem, debootstrap has a --variant fakechroot option. Use that, so that ldd and ldconfig are overridden.

Make sure you have set your LD_PRELOAD path correctly, as described in the fakechroot manpage.

Manual

amd64 architectures are capable of running binaries in i386 mode. It is possible to use pbuilder to run packages, using linux32 and debootstrap --arch option. Specifically, a command-line option like the following will work.
pbuilder create --distribution sid --debootstrapopts --arch --debootstrapopts i386 \
  --basetgz /var/cache/pbuilder/base-i386.tgz --mirror http://ftp.jp.debian.org/debian
linux32 pbuilder build --basetgz /var/cache/pbuilder/base-i386.tgz
« Последнее редактирование: 31 Октябрь 2016, 18:46:15 от bezbo »

 

Страница сгенерирована за 0.111 секунд. Запросов: 23.