在Raspberry Pi上使用MonoDevelop ARMv6

时间:2012-03-03 14:54:14

标签: mono monodevelop raspberry-pi

MonoDevelop编译到ARMv6,主要是因为我可以在Raspberry Pi上运行它吗?


我注意到Debian can run on the Raspberry Pi and Debian has a set of drivers for Mono

这是否意味着我们能够在Mono中发展?

4 个答案:

答案 0 :(得分:32)

Mono project supports ARM,因此应该能够在Raspberry Pi上构建和使用MonoDevelop。至少那是我所希望的!


2012-05-16

我昨天得到了我的Raspberry Pi(是的!)并且可以确认使用Mono及其MCS编译器模块编译和运行.NET代码(我使用C#测试)是可能的。这一切都是通过shell完成的,而不是GUI。如果可能的话,让MonoDevelop IDE运行会很棒。

对于有兴趣的人,可以输入以下命令安装Mono:

sudo apt-get install mono-complete

这还包括MCS编译器模块,因此您可以简单地编译.cs文件:

mcs program.cs

然后像这样运行:

mono program.exe

答案 1 :(得分:11)

只需添加其他答案的说明,它在Debian安装上运行正常但由于缺少编译器支持而无法在Raspbian安装上运行。更多信息可以在这里找到:

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

引用似乎是最明智的答案:

  

据我了解,Raspbian使用不同的“调用约定”,所以   浮点数在CPU上以不同的方式“转移”   办法。所有编译器都必须创建使用Raspbian的机器代码   召集会议。使用GCC编译的软件没有问题   它被配置为默认使用该调用约定。

     

然而,当使用不常用的编译器时(如单声道CLI - >   机器代码即时编译器),事情还没有完成。   单声道JIT编译器显然使用旧的调用约定   它编译的一切,因为没有人实现新的调用   单声道的惯例。只要单声道代码没有,这就没问题了   调用一些非单声道代码,但只要你使用原生代码就会中断   库。

     

这里的细节可能是错误的,但也许它描述了   一般的问题。

     

编辑:只是为了说清楚,“Raspbian召唤大会”   没有专门为raspbian创建的。它和debian一样   armhf和(我认为)任何其他使用armhf的linux。

答案 2 :(得分:7)

Raspberry Pi上的Mono可以并且相当容易设置。以下假设您使用的是Debian。在MonoDevelop(或Visual Studio中使用Mono库)创建应用程序,然后将其发送到Raspberry Pi。一旦进入Raspberry Pi,它将作为标准运行。由于C#,.NET和JIT的本质,您不必“编译”,只需使用运行时来解释MonoDevelop生成的代码。我不会尝试使用MonoDevelop在Raspberry Pi上进行开发,因为它对设备来说相当重。

这取自提供大量Raspberry Pi教程的my blog

注意:目前可用的标准Mono运行时最多只支持.NET 3.5,除非您自己从源代码编译。

  

因此,您希望开始为Raspberry Pi开发一些应用程序,但您对编程的了解仅限于现代.NET语言,如VB.NET和C#。没问题!!欢迎来到Mono世界,这是一个开源的跨平台兼容版本的.NET框架。通过使用开发IDE,例如Visual Studio或更好的MonoDevelop,您可以生成将在Raspberry Pi上运行的EXE文件。您需要做的就是在Raspberry Pi上安装Mono运行时间。为此,我们输入以下行。

sudo apt-get update

sudo apt-get install mono-runtime
  

正如其他教程中所提到的,第一行用于更新APT-GET包管理器,以确保它使用最新的源代码来下载包。第二行安装并准备运行时以供使用。而已。现在运行一个Mono开发的EXE文件,只需在命令前加上单词“mono”,如下所示。

mono myprogram.exe 

答案 3 :(得分:0)