LINUX.ORG.RU

Кросскомпиляция под разными дистрибутивами


0

1

Добрый вечер!

Подскажите, каким путем следует идти в следующей ситуации.

Продукт разрабатывается под Centos 5. Разработчики сидят под Fedora 14, Fedora 12, Gentoo. В настоящий момент компиляция производится на девелоперском сервере или виртуалке. А хочется собирать в самих этих вышеперечисленных системах, но естественно в окружении Centos 5 (библиотеки, компилятор). С перспективой заюзать distcc.

Как решается подобная задача?

Deleted

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

> Разработчики сидят под... Gentoo.

Клёво, это где такое? :)

Ставишь минимальную центось на виртуалку (kvm вполне идёт). Затариваешь корень, распаковываешь в каталог в гентушечке (можно приноровиться монтировать прямо из образа). Биндишь в него /home, /dev, /proc и прочую необходимую фигню. Создаёшь внутри юзера с именем и номером как в хосте. Залезаешь внутрь чрутом и конпеляешь. Сам так сделал с CentOS 5 i386 под Gentoo amd64.

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

Или можно сразу ставить центосёвые рпмки в заданный пустой каталог. Не пробовал. Думаю, под федорой должно прокатить. В генте есть rpm, хз как он справится с центосью.

const86 ★★★★★
()

я использую chroot, поставил centos и федору в отдельные разделы, настроил по убунтовской вики - можно даже запускать IDE( NetBeans ) установленные в этих дистрибутивах и работать, хотя мне хватает просто время от времени делать там сборку и собирать rpm

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

> Клёво, это где такое? :)

маленькая контора одна, пока подвальная :) для клиента делаем по телекому кое-что.

chroot

я понял, спасибо!

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

> mock

меня порадовало, благодарю.

В том числе, автоматизирует установку chroot окружения, монтирования всяких /dev и /proc, и подключение соответствующих репозитариев для многих редхатовских поделок (готовые профили для федор и центосов).

Только столкнулся с несовместимостью форматов rpm-базы для fedora14 и centos5, устанавливаю внутрь чрута только с помощью mock -r epel-5-i386 --install PKG. Как сделать, что бы изнутри хоть как-то можно было вызвать rpm -qa, например, пока не додумался. (да, __db* из /var/lib/rpm/ удалял)

Deleted
()

соберите свой тулчейн, да юзайте его.

crosstool-ng

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

> В том числе, автоматизирует установку chroot окружения, монтирования всяких /dev и /proc, и подключение соответствующих репозитариев для многих редхатовских поделок (готовые профили для федор и центосов).

Еще позволяет брать исходники из scm, держит кеш chroot (ускоряет создание чистого окружения).

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


Думаю, что никак, все управление пакетами идет снаружи. К mock --install можно добавить rpm --root и yum --installroot.

amm ★★
()

Соберите кросс-компилятор:

1) берете sysroot для вашей платформочки 2) собираете binutils под нее 3) собираете gcc под нее

Если ничего специфичного не нужно, то этого должно хватить.

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