c++ - 部署到 Windows 和 Linux 时选择哪个安装系统?

标签 c++ windows linux deployment installation

我的公司正在考虑放弃 InstallShield 并转向其他东西,主要是因为使用它的体验很差,主要是在 Linux 上。

我们的产品是针对 Windows 和 Linux (Red Hat) 的 C++ 应用程序(二进制文件、共享库)。

安装程序本身不需要做任何特殊的事情,只需转储一些二进制文件和共享库,有时还可以执行一个外部进程。不需要通过安装程序升级版本,这是在安装程序完成后处理的。

我想建议在 Windows 上使用 NSIS,在 Linux 上使用 RPM。

部署到 Windows/Linux 时推荐使用哪些安装程序系统?跨平台以防止维护两个安装程序的东西无疑是一个优势。

最佳答案

对于 Windows,我肯定会使用 NSIS。它非常轻巧,易于编码并且非常易于理解。使用 msis 简直就是 killer 锏 - 它会为每个文件生成 guid,这样您就可以免费升级等等,但说实话,您永远不会最终使用这些文件中的任何一个。

关于 Linux,我会选择 RPM 和 Deb。它们可能是两个最大的打包系统,因此您将针对大多数 Linux 用户。我从未尝试过 RPM,但创建 Deb 包非常简单。

关于c++ - 部署到 Windows 和 Linux 时选择哪个安装系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1957644/

相关文章:

windows - 在 vagrant 和 virtualbox 中挂载符号链接(symbolic link)文件夹

linux - 用于在文件中编辑和添加条目的 Shell 脚本

windows - 为什么我的 mongo 查询不只使用索引?

c++ - 这是 g++ 和 clang++ 优化的错误吗?

c++ - 模板元编程中三元运算符的替换

c++ - 为什么 char{} 和 char() 用作 char* 参数的临时变量?

c# - 相同的系统,相同的代码,不同的行为 : The request was aborted: Could not create SSL/TLS secure channel

c++ - 在 Linux/GCC 中编译期间 Steam 回调触发警告

linux - 如何在 Linux 中通过 USB-to-RS232 线与设备通信?

c++ - 不同编译器中标准容器的不同 noexcept 属性