如何将Mono Winforms应用程序部署到Suse Linux 11.0 Server Enterprise?

时间:2010-04-26 03:32:57

标签: c# deployment mono enterprise suse

有没有办法制作一个包含必要运行时和依赖包的简单安装程序,并在OpenSuse菜单中创建一个图标,这样应用程序“才能正常工作?”

实际应用程序只是一个可执行文件(.EXE)和一些支持文件(主要是XML和CSV)。

我已经在MonoDevelop 2.0中成功构建和执行了应用程序。

我最初尝试通过以下存储库http://ftp.novell.com/pub/mono/download-stable/openSUSE_11.0中的zypper安装Mono Runtime,但很快就陷入了缺少的软件包依赖关系中。


当我尝试使用zypper安装Mono运行时时会发生这种情况:

linux-lkfu:~ # zypper addrepo http://ftp.novell.com/pub/mono/download-stable/SLE_11 mono-stable
Adding repository 'mono-stable' [done]
Repository 'mono-stable' successfully added
Enabled: Yes
Autorefresh: No
URI: http://ftp.novell.com/pub/mono/download-stable/SLE_11

linux-lkfu:~ # zypper refresh --repo mono-stable
Retrieving repository 'mono-stable' metadata [done]
Building repository 'mono-stable' cache [done]
Specified repositories have been refreshed.
linux-lkfu:~ # zypper dist-upgrade --repo mono-stable
Loading repository data...
Reading installed packages...
Computing distribution upgrade...
Nothing to do.
linux-lkfu:~ #

注意提示前面的最后一行“无所事事”。我认为它没有做任何事情。

3 个答案:

答案 0 :(得分:2)

如果您有Visual Studio,则可以尝试使用Visual Studio的Mono Tools,它提供了简化工具的工具。它完全可以使用30天。

http://go-mono.com/monotools/

答案 1 :(得分:2)

一种选择是从Novell购买SLES 11的mono support。这将授予您经过测试,支持和工作的单声道存储库。

如果不是,则必须使用SLES存储库。对于mono,它是http://ftp.novell.com/pub/mono/download-stable/SLE_11

这应该这样做:

zypper addrepo http://ftp.novell.com/pub/mono/download-stable/SLE_11 mono-stable
zypper refresh --repo mono-stable
zypper dist-upgrade --repo mono-stable

答案 2 :(得分:1)

取决于您打算如何打包它们。您可以手动创建(deb为Debian和Ubuntu,rpm为Fedora和openSUSE,或其他任何东西)。

就个人而言,我认为首先只需将.sh添加到您的ZIP包中,并要求最终用户执行它以进行依赖性检查,安装等。

然后您可以了解包装方法。