我需要安装一些软件包来运行用 mono C# 编译的应用程序吗?

我需要安装一些软件包来运行用 mono C# 编译的应用程序吗?

我使用 MonoDevelop 编写和编译 C# 代码。我想知道是否有一些必备软件包来运行构建的应用程序?

此外,输出始终是*.exe。是否需要这样,我可以删除 .exe 吗?

答案1

Mono 程序需要该软件包提供的 Mono 运行时mono-runtime。与其他程序一样,它们也可能使用其他软件包提供的共享库。

MonoDevelop 本身是一个使用 Mono 用 C# 编写的程序。任何monodevelop安装了该软件包的 Ubuntu 系统也会mono-runtime安装一些其他支持软件包。当您monodevelop使用 Ubuntu 的软件包管理器安装时,这会自动发生,因为它将其所需的其他软件包声明为依赖项。

因此,您可能不需要安装任何其他东西来运行使用 Mono 的程序。但是,如果您正在开发 Mono 应用程序,那么我建议您安装该mono-complete软件包,它将为您提供您可能想要使用的大多数开发工具。

如果您想要安装比mono-complete您提供的更少的版本,那么您只需安装 即可mono-devel。如果您想要安装比这更少的版本,并且只获取 C# 编译器及其所需的库,那么您可以安装mono-mcs。C# 编译器名为mcs;如果您想直接从命令行运行它,您可以使用该mcs命令。

从您的问题来看,您已经安装了这些东西。


至于.exeC# 编译器自动附加到它生成的二进制文件的后缀:是的,您可以删除它,它们仍会正常运行。不过,您可能并不总是想这样做。.exe在末尾添加后缀不是必需的,但它不会造成任何伤害。它使您的程序更容易移植到其他系统,您可能会或可能不会关心这一点,这取决于您正在做什么。

具体来说,如果您将这些可执行文件复制到 Windows 系统,它们可能仍会运行,但如果您删除了后缀.exe,Windows 将不知道如何处理它们。这是因为 Windows 使用文件扩展名来确定文件是否被视为程序。(当然,您可以将它们重命名。)

相关内容