簡體   English   中英

如何判斷Mono是否在Linux上正確安裝?

[英]How can I tell if Mono is installed properly on 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有一個路徑變量或類似的東西,也許單聲道不在路徑中?

我甚至無法在/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目錄條目。 其中一個應該是你的可執行文件。

如果您的程序已正確安裝,您通常會發現它的可執行文件使用“which”

which programm

喜歡:

which firefox
/usr/bin/firefox

有許多指南和教程建議安裝在/opt/mono中,以免與官方分發包(將安裝在/usr )提供的單聲道沖突。

然而,大多數這些指南遺漏的是/opt/mono是一個非標准前綴,系統在嘗試查找可執行文件時不會考​​慮這些前綴(系統查看$ PATH環境變量)。

有兩種可能的解決方案:

  • 而不是使用前綴/opt/mono使用/usr/local (實際上,如果你不提供任何前綴,則默認使用./configure./autogen.sh 。)。 此前綴通常包含在大多數發行版的$ PATH環境變量中。
  • 使用並行環境中的自定義單聲道安裝。 設置起來有點復雜,但是特別推薦那些想要並行安裝兩個版本的單聲道的人(即非常現代的版本,以及官方發行包提供的更穩定的版本),並且具有良好的控制能力什么時候他們可以使用一個或另一個。

許多互聯網教程推薦/opt/mono而不是/usr/local原因實際上是因為它們大多數是基於wiki頁面(上面引用的),它解釋了如何設置單聲道並行環境,但它們當然不是包括正確設置這樣一個環境的其他步驟(他們只是借用了一下如何調用configure)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM