LINUX.ORG.RU

Сообщения danields966

 

Реально ли собрать все пакеты для chroot руками?

Форум — Development

Всем привет!

Я делаю маленькое приложение на Qt 5, со статической линковкой под Windows, Linux, FreeBSD, macOS. Базово задачу статической линковки я решил, пусть и немного криво, так как:

  • куча виртуалок для сборки под конкретный environment - по две на каждую ось, кроме macOS (так как там нет i686), если добавить еще и aarch64, то будет вообще катастрофа
  • в одном и том же дистрибутиве Linux на разных архитектурах почему-то линкуется разный набор библиотек, хотя через apt ставилось одно и то же и конфигурация при компиляции Qt одинаковая. Во FreeBSD ситуация еще хуже, там надо руками подбирать версии зависимостей

Я прочитал, что решить эти проблемы поможет использование chroot и дальнейшей кросс-компиляции через него (через передачу sysroot при сборке Qt). Таким образом должно быть можно собрать окружение для Windows, Linux, FreeBSD на одной единственной виртуалке, но есть нюанс: простое копирование директорий /usr/include и /usr/lib из целевых систем мне скорее всего не поможет, т.к. они унаследуют проблемы с зависимостями из оригинальных окружений.

В связи с этим вопрос: можно ли как-то подобрать нужные версии библиотек (xlib, xkbcommon, glibc, etc…) и собрать их вручную, чтобы точно был нужный состав либ и их версии? Или это как-то по-другому делается?

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

Буду очень благодарен за любые подсказки :)

 , , ,

danields966
()

RSS подписка на новые темы