web-dev-qa-db-ja.com

LinuxにMonoが正しくインストールされているかどうかはどうすればわかりますか?

次のコマンドを使用して、CentOSにMonoをインストールするようITに依頼しました。

$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にパス変数などがあるとすると、モノがパスに含まれていない可能性がありますか?

/usr/local/srcmonoという実行可能ファイルが見つかりません。ただ、monoフォルダーです。ファイルを検索する方法すらわからないので、正しく検索できない可能性があります。

正しくインストールされているかどうかはどうすればわかりますか?たぶん、私が使用している管理者以外のアカウントでは利用できないのでしょうか?

道に迷いました。助けて!

12
Luke Puplett

monoが正しくインストールされている場合は、not-bash: mono: command not foundのようなメッセージを受け取る必要があります。何かがインストール済みの場合、最も一般的には$PATHにあります。

私のシステムでは、実行可能ファイルは/usr/bin/monoにありますが(ほとんどの場合)、RPMベースのシステムでは状況が異なる場合があります。

ただし、./configureにはプレフィックス/opt/monoが付いているため、実行可能ファイルもその特別なパスの下にあります。 (したがって、monoはインストールされていません適切にインストールされています。)なぜそこにインストールしたのですか?とにかく。これが事実である場合は、次のようなsthを使用して実行できます。

/opt/mono/bin/mono foo.exe

使用できるプレフィックスパスの下に実行可能ファイルを見つけるには

find /opt/mono -name mono

正確にmonoという名前のすべてのディレクトリエントリを表示します。それらの1つは実行可能ファイルである必要があります。

15
Alfe

プログラムが正しくインストールされている場合は、通常、「which」を使用して実行可能ファイルであることがわかります。

which programm

お気に入り:

which firefox
/usr/bin/firefox
7
Serious Sammy

公式の配布パッケージ(/opt/monoにインストールされる)によって提供されるmonoと競合しないように、/usrにインストールすることを推奨するガイドやチュートリアルがたくさんあります。

ただし、これらのガイドのほとんどが見逃しているのは、/opt/monoが非標準のプレフィックスであり、実行可能ファイルを見つけようとするときにシステムによって考慮されないことです(システムは$ PATH環境変数を調べます)。

これには2つの可能な解決策があります:

  • プレフィックス/opt/monoを使用する代わりに/usr/localを使用します(プレフィックスを指定しない場合、実際には./configureまたは./autogen.shがデフォルトで使用します!)。このプレフィックスは通常、ほとんどのディストリビューションの$ PATH環境変数に含まれています。
  • 並列環境 からカスタムモノラルインストールを使用します。これはセットアップが少し複雑ですが、2つのバージョンのmonoを並行してインストールし(つまり、非常に最新のバージョンと、公式の配布パッケージによって提供されるより安定したバージョン)、適切に制御したい場合に特にお勧めします。彼らがどちらかを使用できるときの。

多くのインターネットチュートリアルが/opt/monoではなく/usr/localを推奨する理由は、実際には、それらのほとんどがモノラル並列環境のセットアップ方法を説明するwikiページ(上記参照)に基づいているためですが、もちろんこのような環境を適切にセットアップするための他の手順は含めないでください(configureの呼び出し方法について少し借りただけです)。

3
knocte