次のコマンドを使用して、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/src
にmono
という実行可能ファイルが見つかりません。ただ、mono
フォルダーです。ファイルを検索する方法すらわからないので、正しく検索できない可能性があります。
正しくインストールされているかどうかはどうすればわかりますか?たぶん、私が使用している管理者以外のアカウントでは利用できないのでしょうか?
道に迷いました。助けて!
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つは実行可能ファイルである必要があります。
プログラムが正しくインストールされている場合は、通常、「which」を使用して実行可能ファイルであることがわかります。
which programm
お気に入り:
which firefox
/usr/bin/firefox
公式の配布パッケージ(/opt/mono
にインストールされる)によって提供されるmonoと競合しないように、/usr
にインストールすることを推奨するガイドやチュートリアルがたくさんあります。
ただし、これらのガイドのほとんどが見逃しているのは、/opt/mono
が非標準のプレフィックスであり、実行可能ファイルを見つけようとするときにシステムによって考慮されないことです(システムは$ PATH環境変数を調べます)。
これには2つの可能な解決策があります:
/opt/mono
を使用する代わりに/usr/local
を使用します(プレフィックスを指定しない場合、実際には./configure
または./autogen.sh
がデフォルトで使用します!)。このプレフィックスは通常、ほとんどのディストリビューションの$ PATH環境変数に含まれています。多くのインターネットチュートリアルが/opt/mono
ではなく/usr/local
を推奨する理由は、実際には、それらのほとんどがモノラル並列環境のセットアップ方法を説明するwikiページ(上記参照)に基づいているためですが、もちろんこのような環境を適切にセットアップするための他の手順は含めないでください(configureの呼び出し方法について少し借りただけです)。