我正在 Visual Studio 下开发一些针对 Mono 的跨平台软件,并且希望能够通过单击按钮来构建 Windows 和 Linux(特别是 Ubuntu)的安装程序。我想我可以通过在构建后事件中调用 cygwin 来实现这一点,但我希望最多能有一个 Visual Studio 插件,最坏的情况是有一个更 Windows 原生的方式来实现这一点。看起来包格式相当简单,这一定是一个常见的需求。

编辑:由于重复登录问题,在其他帐户下重新询问问题。

有帮助吗?

解决方案

我不知道有任何插件本身可以做到这一点,特别是因为 Mono 用户似乎更喜欢 单一开发.

但是,应该可以使用 Cygwin 和自定义 MSBuild 任务或批处理文件,以便通过使用本机 .deb 创建工具来实现这一目标。

其他提示

Debian 的 .deb 软件包只是包含 tarball 的“ar”档案。您可以使用 cygwin 或 msys 非常轻松地操作这两种类型的文件:

$ ar xv asciidoc_8.2.1-2_all.deb 
x - debian-binary
x - control.tar.gz
x - data.tar.gz

$ tar -tzf control.tar.gz 
./
./conffiles
./md5sums
./control

或者你可以使用 cygwin 安装所有“标准”Debian 的东西,我想,但是如果你无论如何都要构建一个 .Net 应用程序,那么大多数东西不会给你带来多大的好处。

这一定是一个共同的需求。

一小部分软件开发人员针对 .NET 进行开发
该群体中的一小部分人开发了单声道
该群体中的一小部分人希望提供 .debs 而不仅仅是 zip
该群体中的一小部分人希望在 Windows 上构建他们的 Linux 应用程序,而不是在 Linux 上原生构建

这只是你:-)

如果您使用.NET Core SDK,则可以使用 dotnet 包装 用于从运行 .NET Core 的任何平台创建 Debian 安装程序包的工具。

例如,运行 dotnet deb -c Release -f netcoreapp2.1 -r ubuntu.16.04-x64 然后会创建一个 .deb 您可以使用该文件在 Ubuntu 16.04 上安装应用程序。

项目存储库有更多详细信息。

如果您不介意使用 Java 工具,可以使用以下命令构建 Debian 软件包 杰德布 在 Ant 脚本中。这可能比依赖 Cygwin 更轻松。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top