MonoDevelop ARMv6 на Raspberry Pi - PullRequest
       25

MonoDevelop ARMv6 на Raspberry Pi

39 голосов
/ 03 марта 2012

Будет MonoDevelop компилироваться в ARMv6, в основном, чтобы я мог запустить его на моем Raspberry Pi ?


Я заметил, что Debian может работать на Raspberry Pi, а Debian имеет набор драйверов для Mono .

Так значит ли это, что мы сможем разрабатывать в Mono?

Ответы [ 4 ]

32 голосов
/ 08 марта 2012

Проект Mono поддерживает ARM , поэтому необходимо иметь возможность создавать и использовать MonoDevelop на Raspberry Pi.По крайней мере, это то, на что я надеюсь!


2012-05-16

Я получил свой Raspberry Pi вчера (ура!) И могу подтвердить, что можно скомпилировать и запуститьКод .NET (я тестировал с C #), используя Mono и его модуль компилятора MCS.Все это было сделано через оболочку, а не графический интерфейс.Было бы здорово запустить MonoDevelop IDE, если это вообще возможно.

Для тех, кто заинтересован, вы можете установить Mono, введя:так что вы можете просто скомпилировать файл .cs следующим образом:

mcs program.cs

и запустить его так:

mono program.exe
11 голосов
/ 26 июля 2012

Просто примечание для добавления к другим ответам, оно отлично работает при установке Debian, но еще не работает при установке Raspbian из-за отсутствия поддержки компилятора. Более подробную информацию можно найти здесь:

http://www.raspberrypi.org/phpBB3/viewtopic.php?f=66&t=11634&start=25

Цитируется из того, что кажется наиболее информированным ответом:

Насколько я понимаю, Распбиан использует другое «соглашение о вызовах», поэтому Числа с плавающей запятой «переносятся» на ЦП в другой путь. Все компиляторы должны создавать машинный код, который использует Raspbian Соглашение о вызовах. Это не проблема для программного обеспечения, скомпилированного с GCC, так как по умолчанию он настроен на использование этого соглашения о вызовах.

Однако при использовании менее распространенных компиляторов (например, моно CLI -> компилятор машинного кода точно в срок), вещи еще не совсем работают. Моно JIT-компилятор, очевидно, использует старое соглашение о вызовах для все это компилируется, потому что никто не реализовал новое призвание Конвенция в моно еще. Это хорошо, пока моно код не вызов в некоторый немоно-код, но прерывается, как только вы используете нативный библиотека.

Подробности в этом, вероятно, неверны, но, возможно, это описывает проблема в общем.

Редактировать: И просто, чтобы прояснить это, "соглашение Raspbian вызова" специально для raspbian ничего не создано Это так же, как в Debian armhf и (я думаю) любой другой linux, использующий armhf.

7 голосов
/ 04 июля 2012

Mono на Raspberry Pi возможен и достаточно прост в настройке.Ниже предполагается, что вы находитесь на Debian.Создайте ваше приложение в MonoDevelop (или Visual Studio с библиотеками Mono) и затем отправьте его Raspberry Pi.Однажды на Raspberry Pi он будет работать как стандарт.Из-за особенностей C #, .NET и JIT вам не нужно «компилировать» как таковые, просто есть доступные среды выполнения для интерпретации кода, созданного MonoDevelop.Я бы постарался не разрабатывать сам Raspberry Pi с MonoDevelop, так как он довольно тяжелый для устройства.

Это взято из моего блога , который предлагает несколько учебных пособий по Raspberry Pi.

Примечание: стандартная среда исполнения Mono, доступная в настоящее время, поддерживает только до .NET 3.5, если вы сами не компилируете из исходного кода.

Итак, вы хотите начать разработку некоторых приложений для вашего Raspberry Pi, но вашзнание программирования ограничено современными языками .NET, такими как VB.NET и C #.Не проблема!!Добро пожаловать в мир Mono, кроссплатформенной и совместимой версии платформы .NET с открытым исходным кодом.Используя среду разработки, например Visual Studio или даже лучше MonoDevelop , вы можете создавать файлы EXE, которые будут работать на вашем Raspberry Pi.Все, что вам нужно сделать, это установить время выполнения Mono на Raspberry Pi.Для этого мы вводим следующие строки:

sudo apt-get update

sudo apt-get install mono-runtime

Как упоминалось в других руководствах, первая строка используется для обновления менеджера пакетов APT-GET, чтобы убедиться, что он использует последние источникидля загрузки ваших пакетов.Вторая строка устанавливает и подготавливает среды выполнения к использованию.Вот и все.Теперь, чтобы запустить EXE-файл, разработанный Mono, просто добавьте в команду префикс «mono», как показано ниже.

mono myprogram.exe 
0 голосов
/ 11 марта 2013
...