Build 在树莓皮3上构建Mono
我拼命想在覆盆子皮3上制作单声道。 我首先从Repo安装了Mono。然后我试着建造最新的tarball或git大师。两者都不起作用 我总是以这样的信息结束:Build 在树莓皮3上构建Mono,build,mono,raspberry-pi,raspbian,raspberry-pi3,Build,Mono,Raspberry Pi,Raspbian,Raspberry Pi3,我拼命想在覆盆子皮3上制作单声道。 我首先从Repo安装了Mono。然后我试着建造最新的tarball或git大师。两者都不起作用 我总是以这样的信息结束: make install-local make[7]: Entering directory '/home/pi/mono-5.9.0.415/mcs/class/corlib' CSC [basic] mscorlib.dll /home/pi/mono-5.9.0.415/mcs/class/referencesource/ms
make install-local
make[7]: Entering directory '/home/pi/mono-5.9.0.415/mcs/class/corlib'
CSC [basic] mscorlib.dll
/home/pi/mono-5.9.0.415/mcs/class/referencesource/mscorlib/system/threading/Tasks/Task.cs(5918,45): error CS0246: The type or namespace name 'Task<>' could not be found (are you missing a using directive or an assembly reference?)
/home/pi/mono-5.9.0.415/external/corefx/src/System.Memory/src/System/ReadOnlySpan.cs(85,42): warning CS3001: Argument type 'void*' is not CLS-compliant
/home/pi/mono-5.9.0.415/external/corefx/src/System.Memory/src/System/Span.cs(90,34): warning CS3001: Argument type 'void*' is not CLS-compliant
../../build/library.make:329: recipe for target '../../class/lib/basic/mscorlib.dll' failed
make[7]: *** [../../class/lib/basic/mscorlib.dll] Error 1
make[7]: Leaving directory '/home/pi/mono-5.9.0.415/mcs/class/corlib'
../../build/rules.make:211: recipe for target 'do-install' failed
make[6]: *** [do-install] Error 2
make[6]: Leaving directory '/home/pi/mono-5.9.0.415/mcs/class/corlib'
../build/rules.make:232: recipe for target 'install-recursive' failed
make[5]: *** [install-recursive] Error 1
make[5]: Leaving directory '/home/pi/mono-5.9.0.415/mcs/class'
build/rules.make:232: recipe for target 'install-recursive' failed
make[4]: *** [install-recursive] Error 1
make[4]: Leaving directory '/home/pi/mono-5.9.0.415/mcs'
Makefile:54: recipe for target 'profile-do--basic--install' failed
make[3]: *** [profile-do--basic--install] Error 2
make[3]: Leaving directory '/home/pi/mono-5.9.0.415/mcs'
Makefile:50: recipe for target 'profiles-do--install' failed
make[2]: *** [profiles-do--install] Error 2
make[2]: Leaving directory '/home/pi/mono-5.9.0.415/mcs'
Makefile:600: recipe for target 'install-exec' failed
make[1]: *** [install-exec] Error 2
make[1]: Leaving directory '/home/pi/mono-5.9.0.415/runtime'
Makefile:541: recipe for target 'install-recursive' failed
make: *** [install-recursive] Error 1
有人有同样的问题吗?
或者一些关于如何正确构建的建议?由于不清楚问题是否特别是关于在Raspberry Pi 3或mono上运行mono版本5.9.0.415,我将假设问题是关于mono的 根据我的经验,mono 5和armv7l平台(armv7l未知linux gnueabihf)似乎存在兼容性问题 我已尝试构建以下mono发行包:
- 5.0.0.100
- 5.0.1.1
- 5.2.0.104
- 5.2.0.224
- 5.9.0.398
- 5.9.0.415
wget https://download.mono-project.com/sources/mono/mono-4.8.1.0.tar.bz2
tar xvf mono-4.8.1.0.tar.bz2
cd mono-4.8.1.0
./configure --prefix=/home/pi/.myMono
make
make install
此外,值得一提的是,如果您希望在Raspberry Pi 3上进行mono编译时利用所有4个CPU内核,可以通过如下方式启动make:make-j4
。这将大大缩短编译时间
如果希望跳过libmono的生成,可以通过使用--disable libraries参数配置构建:/configure--disable libraries--prefix=/home/pi/.myMono
。但由于您需要库来运行任何应用程序。。。这仅对mono运行时的连续重建有帮助(一旦您已经安装了monolib)
我注意到,但无法验证的是,可能有一些Mono5包的树莓皮3毕竟有。这声称有一个5.2软件包可供下载。单声道也是如此
作为旁注,我想提到的是,在/home/pi/.myMono中安装mono可能是一个糟糕的选择。但我想它应该仍然有效。。。更经典的方法是/usr/local或/opt文件夹。这里有一些想法。因为不清楚问题是关于让mono版本5.9.0.415在Raspberry Pi 3或mono上运行,我假设问题是关于mono的 根据我的经验,mono 5和armv7l平台(armv7l未知linux gnueabihf)似乎存在兼容性问题 我已尝试构建以下mono发行包:
- 5.0.0.100
- 5.0.1.1
- 5.2.0.104
- 5.2.0.224
- 5.9.0.398
- 5.9.0.415
wget https://download.mono-project.com/sources/mono/mono-4.8.1.0.tar.bz2
tar xvf mono-4.8.1.0.tar.bz2
cd mono-4.8.1.0
./configure --prefix=/home/pi/.myMono
make
make install
此外,值得一提的是,如果您希望在Raspberry Pi 3上进行mono编译时利用所有4个CPU内核,可以通过如下方式启动make:make-j4
。这将大大缩短编译时间
如果希望跳过libmono的生成,可以通过使用--disable libraries参数配置构建:/configure--disable libraries--prefix=/home/pi/.myMono
。但由于您需要库来运行任何应用程序。。。这仅对mono运行时的连续重建有帮助(一旦您已经安装了monolib)
我注意到,但无法验证的是,可能有一些Mono5包的树莓皮3毕竟有。这声称有一个5.2软件包可供下载。单声道也是如此
作为旁注,我想提到的是,在/home/pi/.myMono中安装mono可能是一个糟糕的选择。但我想它应该仍然有效。。。更经典的方法是/usr/local或/opt文件夹。这里有一些想法。我昨晚在我的RasPi3上编译了相同的mono软件包。有趣的是,我在Task.cs上没有收到错误,但在ReadOnlySpan.cs和Span.cs上都收到了警告。我正在尝试一些事情,并会让你知道事情的进展。我从一个干净的archlinux安装开始,添加了所有的编译器和工具,但没有从repo安装mono。理论上,系统的构建可能使用回购协议中的CSC。您是否尝试过从repo卸载mono软件包?您在Pi上使用的linux发行版是什么?mono 5.2.0.224和5.9.0.398的编译在同一位置中止。这里显示了CSC的异常堆栈,看起来CompileMethodBodies对空异常感到不安。5.9.0.415具有最干净的输出,但没有给出有关问题的提示。考虑到mono 5的最大变化是Roslyn,我怀疑Roslyn还没有为32位ARM平台的黄金时间做好准备——它在mt x86_64虚拟机上编译得很好。作为一个实验,我正在RasPi3上编译Mono 4.8.1,到目前为止看起来还不错。昨晚我在我的RasPi3上编译了相同的Mono包。有趣的是,我在Task.cs上没有收到错误,但在ReadOnlySpan.cs和Span.cs上都收到了警告。我正在尝试一些事情,并会让你知道事情的进展。我从一个干净的archlinux安装开始,添加了所有的编译器和工具,但是没有