Я провел последние три недели, исследуя перекрестное развитие в Mac OS X. Я хочу добиться двух отдельных результатов, но я считаю, что они могут быть достигнуты по тому же пути. Я хочу
- настройте distcc, чтобы помочь моему старому ноутбуку Gentoo, используя iMac, который я недавно получил дома (OS X 10.6, 64 бит native), который я также использую для разработки iOS, поэтому инструменты Xcode 4 уже есть;
- создайте проект моего любимца, который является ядром эльфа для x86, x86_64 и arm (и я остановлюсь здесь, как на OT).
Итак, после многих этих мыслей, которые мы все делаем в этих случаях, я пришел к мысли, что для достижения первой цели мне нужно настроить i686-pc-linux-gnu toolchain (или это i686- unknown-linux-gnu?) со всеми соответствующими версиями (например, gcc-4.4) и сделать его вызываемым distcc. Похоже, что это разумная задача, но, к сожалению, есть более четкие инструменты и инструкции по созданию инструментальных цепей для неясных арков, таких как sparc или mips, а не один разумно обновленный ресурс о том, как лучше всего перейти на x86. Поэтому первый вопрос: есть ли кто-нибудь, кто успешно создает такую инструментальную цепочку и чувствует, что разделяет боль?:)
Вторая цель. Мой текущий рабочий стол сделан из Gentoo на ноутбуке i686 (да, так же, как и первый) со всеми обычными разработками, и я использую QEMU для его тестирования (его интеграция с gdb потрясающая). То, что я действительно хотел бы сделать, это продолжать использовать ноутбук во время поездок (я много езжу на работу) и продолжать работать и тестировать на iMac, когда я дома (git является удивительным в этом отношении). Следовательно, второй вопрос: есть ли кто-нибудь, кто сделал что-то подобное и хочет поделиться?
Я бы очень признателен за любой вклад. Серьезно.
EDIT Я знаю о MacPorts, crosstool и crosstool-ng. Я попытался установить i386-elf-binutils 2.18 из MacPorts, чтобы узнать, что у меня 2,20 на моем ноутбуке. Также я не мог получить gcc44 для создания объектов i686-pc-linux-gnu elf, а использование i386-elf-gcc не является вариантом, так как мне нужно 4.4, а упакованный - 4.3.