Кросс-компиляция моно для руки

Кто-нибудь успешно кросс-компилировал моно для ARM под Linux без скретчбокса или qemu?

(возможно, с помощью distcc или какого-нибудь инструментария кросс-компилятора)


person Gobliins    schedule 10.02.2011    source источник


Ответы (2)


Мне удалось перекрестно скомпилировать моно (2.0, 2.4, 2.6, 2.8, 2.10.1) с помощью Scratchbox 2, установленного на компьютере с Ubuntu, с помощью цепочки инструментов CodeSourcery Lite. Я использовал статью с страницы проекта Mono.

Сначала скомпилируйте его на родной машине

./configure
$ make
$ make install DESTDIR=path

Затем в сбн2:

[sbox-ARMEL: ~] > ./configure --disable-mcs-build
[sbox-ARMEL: ~] > make 
[sbox-ARMEL: ~] > make install DESTDIR=path

Я использую это для настройки

./configure --enable-minimal=profiler,debug,logging,soft_debug --with-tls=--with-tls=__thread --with-monotouch=no --without-mcs-docs --disable-mono-debugger CFLAGS=-DARM_FPU_NONE --disable-mcs-build
person retek4    schedule 03.03.2011
comment
хм, я попробовал ./configure --disable-mcs-build, но у меня не получилось с большим количеством неопределенных ссылок, завтра я проверю вашу конфигурацию - person Gobliins; 04.03.2011
comment
какой набор инструментов вы используете в среде sbox? ваш DESTDIR одинаков в обеих средах или вы объединяете позже после сборки? - person Gobliins; 07.03.2011
comment
извините за задержку ответа. да, destdir такой же. (Примечание: я изменил цепочку инструментов, используя crosstool-ng) - person retek4; 21.06.2011
comment
Отключение MCS у меня тоже не работает. Кажется, он не работает на шагах тестовой программы. - person jocull; 11.04.2012
comment
Когда вы компилируете моно на родной машине, вы не должны использовать --disable-mcs-build. После установки выполните очистку и повторите настройку с отключением mcs в sb2. - person retek4; 13.04.2012
comment
есть ли у кого-нибудь из вас, господа, какая-либо помощь, справочные страницы, учебные пособия с пошаговым процессом того, как все это сделать? В настоящее время я собираюсь сделать то же самое, но все, что я вижу здесь, представляет собой набор заметок от кого-то с опытом, не подходящего для n00b, делающего это. - person Richard B; 14.05.2016

Вчера вечером я пытался, пытался и пробовал сcratchbox2.. Столкнулся с проблемой.. В итоге просто скомпилировался на руке, все прошло нормально! заняло 30 минут!

CFLAGS=-DARM_FPU_VFP_HARD HardFloat
CFLAGS=-DARM_FPU_VFP_NONE SoftFloat

Скомпилировать моно на ПК

sudo make install `directory like /tmptree etc`

переместите все эти файлы из /tmptree в /etc на вашем ручном устройстве.

./autogen.sh --disable-mcs-build
make CFLAGS=-DARM_FPU_VFP_HARD
sudo make install
sudo ldconfig

Исправление Mono Hard Float

Пытался сделать Hard Float с моно 3.0.3. Он сказал, что еще не поддерживает его.

person user1713462    schedule 25.02.2013