我是 ubuntu 新手,想在 ubuntu 上安装最新的 mono。当我发出命令时
make get-monolite-latest
但我收到了这个错误信息
rm -fr /home/avalon/monobuild/mono/mcs/class/lib/monolite-* mkdir -p
/home/avalon/monobuild/mono/mcs/class/lib test ! -d
/home/avalon/monobuild/mono/mcs/class/lib/monolite || test ! -d
/home/avalon/monobuild/mono/mcs/class/lib/monolite.old || rm -fr
/home/avalon/monobuild/mono/mcs/class/lib/monolite.old test ! -d
/home/avalon/monobuild/mono/mcs/class/lib/monolite || mv -f
/home/avalon/monobuild/mono/mcs/class/lib/monolite
/home/avalon/monobuild/mono/mcs/class/lib/monolite.old cd
/home/avalon/monobuild/mono/mcs/class/lib && { (wget -O-
http://storage.bos.xamarin.com/mono-dist-master/latest/monolite-110-latest.tar.gz
|| curl
http://storage.bos.xamarin.com/mono-dist-master/latest/monolite-110-latest.tar.gz)
| gzip -d | tar xf - ; }
--2014-01-07 07:51:57-- http://storage.bos.xamarin.com/mono-dist-master/latest/monolite-110-latest.tar.gz
Resolving storage.bos.xamarin.com (storage.bos.xamarin.com)...
198.0.162.157 Connecting to storage.bos.xamarin.com (storage.bos.xamarin.com)|198.0.162.157|:80... connected. HTTP
request sent, awaiting response... 404 Not Found 2014-01-07 07:51:59
ERROR 404: Not Found.
/bin/bash: curl: command not found
gzip: stdin: unexpected end of file tar: This does not look like a tar archive tar: Exiting with failure status due to previous
errors make:
*** [get-monolite-latest] Error 2
有人说 Monolite 的最新版本现在是 111,不再是 110,但我不知道如何将链接更改应用到“制作最新的 monolite”安装monolite编译器的命令
答案1
您可以使用命令行参数覆盖 URL:
make monolite_url=http://storage.bos.xamarin.com/mono-dist-master/latest/monolite-111-latest.tar.gz get-monolite-latest
答案2
另请注意,在版本 111 中,gmcs.exe 已重命名为 basic.exe
因此运行:
make EXTERNAL_MCS="${PWD}/mcs/class/lib/monolite/basic.exe"
答案3
我现在也遇到了同样的问题。发现网址已关闭,因此更改为其他网址。
解决方案是从 make 文件中获取此命令
cd $(mcslib) && { (wget -O- $(monolite_url) || curl $(monolite_url)) | gzip -d | tar xf - ; }
cd $(mcslib) && mv -f monolite-* monolite
我修改了它并在 shell 上运行它们。将 $(mcslib) 替换为我的 mono 源的 mcs lib 路径。
并将 $(monolite_url) 替换为正确的 url。
所以在我的情况下路径是 /home/ubuntu/softwares/mono
cd /home/ubuntu/softwares/mono/mcs/class/lib && { (wget -O- http://storage.bos.xamarin.com/mono-dist-master/latest/monolite-111-latest.tar.gz|| curl http://storage.bos.xamarin.com/mono-dist-master/latest/monolite-111-latest.tar.gz)| gzip -d | tar xf - ; }
cd /home/ubuntu/softwares/mono/mcs/class/lib && mv -f monolite-* monolite
然后你可以运行
make EXTERNAL_MCS="${PWD}/mcs/class/lib/monolite/gmcs.exe"
希望这也能解决您的问题。