【问题标题】:Packaging an application with dependencies under Windows在 Windows 下打包具有依赖关系的应用程序
【发布时间】:2023-04-07 17:50:01
【问题描述】:

我在 Linux 下使用 gtkmm 和 libpcap 编写了一个应用程序。当然,gtkmm 依赖于 GTK+。

将其移植到Windows并尝试分发后,我收到的反馈是要安装的依赖项太多。

用户必须先运行 GTK+、gtkmm 和 winpcap 运行时的安装程序,然后才能运行我的小应用程序,这无疑是一种痛苦。

GIMP for Windows 似乎使用了一个安装程序,如果需要,它会启动一个 GTK+ 安装程序,但对三个不同的库这样做似乎有点过分,尤其是在安装程序大小方面。

有没有更好的方法来分发这个?我相信 winpcap 实际上必须安装一个服务,所以它可能必须运行安装程序,但也许我可以将 GTK+/gtkmm 库捆绑在运行时文件夹中?

我对 Linux 开发比较熟悉,所以我不确定最好的做法是什么。

【问题讨论】:

    标签: windows gtk gtkmm


    【解决方案1】:

    我强烈建议您使用像Advanced Installer 这样的工具来为您处理这个问题。在 Windows 上制作正确的安装程序确实令人头疼,因此值得您花时间使用 GUI 工具来帮助您。 AI(以及其他安装程序,就此而言)可以安装和管理 Windows 服务、先决条件等,从长远来看,通过使用这样的工具来帮助您进行部署,您将节省大量时间。特别是 Advanced Installer 对管理不同的依赖项及其相关版本有很好的支持,它还可以在安装过程中安装本机 Windows 服务。他们有一个免费版本,但根据您产品的性质,您可能希望选择其中一个商业版本。

    基本上,如果您认真考虑在 Windows 上进行部署,您应该投入时间(可能还有金钱)来制作合适的 MSI 风格的安装程序。不是要打击 NSIS 的人群,而是制作非标准的 Windows 安装程序总是会给开发人员带来更多的工作,给最终用户带来更不舒服的体验。

    【讨论】:

      【解决方案2】:

      如果您想手动打包 GTKmm 运行时,请参阅 gnome.org 上的this link 了解更多详细信息(查看重新分发下的内容)。您也可以使用 /S 标志静默运行 GTKmm 安装程序。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-02-20
        • 1970-01-01
        • 1970-01-01
        • 2023-04-06
        • 2016-01-14
        • 2011-08-26
        • 2021-02-20
        • 1970-01-01
        相关资源
        最近更新 更多