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

如何判断Linux上是否正确安装了Mono?,linux,mono,Linux,Mono,我要求它使用以下命令在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/s

我要求它使用以下命令在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
但是,当我运行
monomyapp.exe

-bash: mono: command not found
我对Linux一无所知——我觉得我在日本。假设Linux有一个路径变量或类似的东西,那么mono可能不在路径中

我甚至在
/usr/local/src
中找不到名为
mono
的可执行文件,只是一个
mono
文件夹。请注意,我甚至不知道如何搜索文件,所以我可能找不到合适的文件

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


我迷路了。救命啊

如果正确安装了
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的目录项,请执行以下操作:
mono
。其中一个应该是您的可执行文件。

如果您的程序安装正确,您通常会使用“which”找到它的可执行文件

比如:


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

但是,这些指南中的大多数都忽略了
/opt/mono
是一个非标准前缀,系统在试图查找可执行文件时不会考虑它(系统查看$PATH环境变量)

有两种可能的解决方案:

  • 不要使用前缀
    /opt/mono
    而使用
    /usr/local
    (如果您不提供任何前缀,则默认情况下,
    /configure
    /autogen.sh
    会使用该前缀!)。此前缀通常包含在大多数发行版的$PATH环境变量中
  • 使用您的自定义mono安装从。设置起来有点复杂,但特别推荐给那些希望同时安装两个版本的mono(即非常现代的版本,以及官方发行包提供的更稳定的版本)的人,并且可以很好地控制何时可以使用其中一个版本

许多互联网教程推荐使用
/opt/mono
而不是
/usr/local
的原因实际上是因为大多数教程都基于解释如何设置mono并行环境的wiki页面(见上文),但它们当然不包括正确设置此类环境的其他步骤(他们只是借用了一些关于如何调用configure的知识)。

很酷,有进展了!因此,从
/opt/mono/bin
中,我可以运行
/mono
并查看使用帮助。感谢
查找
提示。试试这个:无论它是否在路径中,find都会查找它
which programm
which firefox
/usr/bin/firefox