如何判断Mono是否在Linux上正确安装?

时间:2013-12-06 11:48:16

标签: linux mono

我要求IT部门使用以下命令在CentOS上安装Mono:

$yum install bison gettext glib2 freetype fontconfig libpng libpng-devel libX11 libX11-devel glib2-devel libgdi* libexif glibc-devel urw-fonts java unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget
$cd /usr/local/src 
$wget http://download.mono-project.com/sources/mono/mono-3.2.5.tar.bz2
$tar jxf mono-3.2.5.tar.bz2
$cd mono-3.2.5
$./configure --prefix=/opt/mono
$make && make install

然而,当我运行mono myapp.exe时,我得到了

-bash: mono: command not found

我对Linux一无所知 - 我觉得我在日本。假设Linux有一个路径变量或类似的东西,可能单声道不在路径中?

我甚至无法在mono中找到名为/usr/local/src的可执行文件,只是mono文件夹。请注意,我无法弄清楚如何搜索文件,所以我可能看不太正确。

如何判断其安装是否正确?也许它不适用于我使用的非管理员帐户?

我迷路了。救命啊!

3 个答案:

答案 0 :(得分:14)

如果mono已正确安装,则会收到-bash: mono: command not found之类的消息。如果安装,则最常见的是$PATH

在我的系统上,可执行文件位于/usr/bin/mono(大多数情况都是如此),但在基于RPM的系统上可能会有所不同。

然而,您的./configure获得了前缀/opt/mono,因此您的可执行文件也可能位于该特殊路径下。 (因此mono未安装正确。)为什么要在那里安装它?无论如何。如果这是事实,那么您可以使用类似

执行它
/opt/mono/bin/mono foo.exe

找到你可以使用的前缀路径下面的可执行文件

find /opt/mono -name mono

查看名为mono的所有目录条目。其中一个应该是你的可执行文件。

答案 1 :(得分:6)

如果您的程序安装正确,您通常会使用“which”

找到它的可执行文件
which programm

像:

which firefox
/usr/bin/firefox

答案 2 :(得分:3)

有许多指南和教程建议在/opt/mono中安装,以免与官方发行包(将安装在/usr中)提供的单声道冲突。

然而,大多数指南遗漏的是/opt/mono是一个非标准前缀,系统在尝试查找可执行文件时不会考​​虑这些前缀(系统查看$ PATH环境变量)

有两种可能的解决方案:

  • 使用/opt/mono而不是使用前缀/usr/local(如果您不提供任何前缀,则默认情况下./configure./autogen.sh使用{!}}。此前缀通常包含在大多数发行版的$ PATH环境变量中。
  • 使用Parallel Environment中的自定义单声道安装。设置起来有点复杂,但是特别推荐那些想要并行安装两个版本的单声道的人(即非常现代的版本,以及官方发行包提供的更稳定的版本),并且具有良好的控制能力何时他们可以使用其中一种。

许多互联网教程推荐使用/opt/mono而不是/usr/local的原因实际上是因为大多数互联网教程都基于上面提到的维基页面(如上所述),但它解释了如何设置单声道并行环境,他们当然不包括正确设置这样一个环境的其他步骤(他们只是借用了一些关于如何调用configure)。