可能的重复项:
如何将一个简单的.Net控制台项目a转换为带有Mono和mkbundle的可移植exe?
我有一个写在Windows上的C#程序,我需要将其传输到linux服务器。
但是,客户不希望在他的服务器上安装单声道,所以我想找到一种方法让他变得容易。
是否可以将此程序转换为这样一种格式,使其无需安装单声道即可在 linux 上运行?
如果您的目标系统没有安装单声道,则需要将 mkbundle 与 --static
选项一起使用。
此外,捆绑包还支持 --static 标志。--static 标志使 mkbundle 生成一个静态链接 Mono 运行时的静态可执行文件。请注意,此选项将触发 LGPL 要求,即您仍将独立部分分发给您的用户,以便他可以选择手动升级其 Mono 运行时
C# 程序基于公共语言运行库。它们不是本机应用程序。因此,据我所知,如果没有系统上的CLR,就无法运行用C#制作的程序。目前,只有两个:.NET(Windows(和Mono。
所以我认为没有办法在不安装 Mono 的情况下在非 Windows 机器上运行您的程序。