将c项目转换为桌面应用程序

Converting c project to a desktop application

本文关键字:桌面 应用程序 转换 项目      更新时间:2023-10-16

我创建了一个使用opencv库的c/c++程序。我想把它转换成桌面应用程序,可以通过简单地安装在任何系统上运行。也可以这样做,以便用户安装软件不需要opencv。我是说它是和软件一起打包的

这是如何做到的,你能指出一些好的书或教程吗?我还想创建GUI

有什么建议吗?

我想为windows和linux创建软件

对于c++开发,我对Qt开发非常满意。再加上强大的跨平台支持。您还可以查看wxWidgets

您可能想要围绕您的软件构建一个安装程序。在Linux系统中,这通常是通过使用autotools (autoconfautomake)来构建一个包,然后将这个包插入到你的发行版中,例如去bianizing它。这个过程有很好的文档。

在Windows下,你需要构建一个安装程序;我使用Inno Setup安装程序编译器有很好的经验。

在这两种情况下,都不需要静态地链接OpenCV。但是,您可以考虑其他海报建议的更简单的替代方案,只需在链接器命令行中添加-static。

这真是一个悬而未决的问题。你可以在桌面上运行编译好的C/c++应用程序,所以我认为GUI是你想要添加的。既然你说的是Linux/Windows,你要么需要很好地分离你的UI代码并创建一个单独的Windows;Linux前端,或者查看同时适用于两者的库(如GTK+)。

关于不需要单独安装opencv,当然可以根据该库的许可来完成。查看他们的网页/文档以了解更多信息。他们可能有很好的指导,关于如何正确地包装它,如果有任何步骤必须遵守他们的许可模型。

如果你想要一本书或教程,你可能需要从你的图书馆开始,因为你所问的范围可能不会在一本书中涵盖。实际上,稍微研究一下可能会帮助你更好地准确定义你要做的事情。

有一些工具可以帮助你做到这一点,有些是免费的,有些是付费的。

  • izpack is free.

  • InstallJammer是免费

  • InstallBuilder是付费的

  • InstallAnywhere也是付费的

为了避免让用户安装OpenCV,您可以尝试静态链接到它的二进制文件。检查OpenCV文档,它可能有这样做的说明。至于c++的可移植GUI,甚至有相关书籍,但最受欢迎的似乎是wxWidgets。

这里还有一个关于可移植c++ UI工具包的问题,请查看