如何知道Mono是否在Linux上正确安装?

我要求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有一个pathvariables或类似的东西,也许mono不在path中?

我甚至无法在/usr/local/srcfind名为mono的可执行文件,只是一个mono文件夹。 请注意,我无法解决如何search文件,因此可能无法正常查找。

我怎么知道它的安装是否正确? 也许它只是不适用于我使用的非pipe理员帐户?

我迷路了。 帮帮我!

如果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目录条目。 其中之一应该是你的可执行文件。

如果你的程序安装正确,你通常会发现它是可执行的使用“哪个”

 which programm 

喜欢:

 which firefox /usr/bin/firefox 

有很多指南和教程,推荐安装在/opt/mono中,以免与官方发行包(将安装在/usr )提供的mono相冲突。

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

有两种可能的解决方案:

  • 而不是使用前缀/opt/mono使用/usr/local (实际上,如果不提供任何前缀,则默认使用./configure./autogen.sh )。 此前缀通常包含在大多数分发的$ PATH环境变量中。
  • 在并行环境中使用您的自定义单声道安装。 这个设置稍微复杂一些,但是它特别推荐给那些想要并行安装两个版本的单声道的人(比如一个非常现代的版本,以及官方发行包提供的更稳定的版本),并且有很好的控制当他们可以使用这个或另一个。

许多互联网教程推荐/opt/mono而不是/usr/local原因实际上是因为它们大部分是基于上面提到的wiki页面,它解释了如何设置单声道并行环境,包括其他步骤来正确建立这样一个环境(他们只是借用了一下如何调用配置)。