我正在开发一些针对 Visual Studio 下的 Mono 的跨平台软件,并且希望能够通过单击一次按钮来构建 Windows 和 Linux(特别是 Ubuntu)的安装程序。我想我可以通过从构建后事件调用 cygwin 来做到这一点,但我希望充其量是一个 Visual Studio 插件,或者最坏的情况是一种更原生的 Windows 方式。看起来包格式相当简单,这一定是一种常见的需求。
编辑:由于重复登录问题,在其他帐户下重新提问。
我正在开发一些针对 Visual Studio 下的 Mono 的跨平台软件,并且希望能够通过单击一次按钮来构建 Windows 和 Linux(特别是 Ubuntu)的安装程序。我想我可以通过从构建后事件调用 cygwin 来做到这一点,但我希望充其量是一个 Visual Studio 插件,或者最坏的情况是一种更原生的 Windows 方式。看起来包格式相当简单,这一定是一种常见的需求。
编辑:由于重复登录问题,在其他帐户下重新提问。
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 Core SDK,则可以使用dotnet-packaging工具从任何运行 .NET Core 的平台创建 Debian 安装程序包。
例如,运行dotnet deb -c Release -f netcoreapp2.1 -r ubuntu.16.04-x64
将创建一个.deb
文件,您可以使用该文件在 Ubuntu 16.04 上安装您的应用程序。
项目存储库有更多详细信息。
我不知道有任何插件可以原生实现,特别是因为 Mono 用户似乎更喜欢MonoDevelop。
但是,应该可以使用 Cygwin 和自定义 MSBuild 任务或批处理文件,以便通过使用本机 .deb 创建工具来实现。
这一定是一个共同的需要。
一小部分软件开发人员为 .NET 开发
一小部分人开发单声道
一小部分人想要提供 .debs 而不仅仅是一个
zip windows而不是linux上的本机
只是你:-)
如果您不介意使用 Java 工具,可以在 Ant 脚本中使用jdeb构建 Debian 软件包。这可能比依赖 Cygwin 更轻松。