首次部署Qt应用程序,动态链接
First time Deploying Qt Application, dynamically link?
我开始考虑部署我一直在开发的Qt应用程序,但在此之前我从未部署过任何C++应用程序。
我希望能够将我的产品作为预编译的可执行文件发布,该可执行文件动态链接Linux/Windows的共享库文件(Qt),这样就有了一个可执行文件,它可以在自己的子目录中查找库,而不是其他Qt产品可能安装的库。
这是可能的吗?或者必须单独安装Qt库文件,以便应用程序与之链接?我想避免要求最终用户在他们的系统上安装任何东西,同时也避免静态链接。
这是Qt的正常行为。如何做到这一点在很大程度上取决于您的构建系统。
如果使用CMake,则可以使用CPack生成安装程序。这里有一个链接,可以将所需的共享库添加到安装程序中。CPack为Linux、Windows和Mac OS X制作了许多不同类型的安装程序。
您也可以使用NSIS生成自己的安装程序。这需要更多的参与,但却是可行的。
Qt有关于如何部署使用其库的应用程序的文档。
在我的公司,我们同时做CPack和NSIS。CPack方式要简单得多,而且网上有更多的例子。
相关文章:
- g++用户定义的动态链接库上的全局new和delete运算符
- 如何使用C++导出制作动态链接库
- 使用动态链接加载程序 <dlfcn.h> 而不是直接函数调用的目的是什么?
- 动态链接库中C++回调函数
- 我的动态链接队列在同一输出流中调用时不正确地输出三个返回函数
- 如何动态链接 grpc 库 c++?
- 调用函数一次用于动态链接库,一次从可执行文件调用函数
- 将函数传递给动态链接库
- aarch64动态链接器rpath使用辅助依赖链接
- 动态链接-Linux与Windows
- 如何将动态链接库与CMake一起使用
- 使用动态链接从.dll库调用函数
- 静态链接 Visual Studio dll 到动态链接的 sfml 项目
- 从另一个动态链接库项目调用静态库函数
- JNI 不满意链接错误: 动态链接库 (DLL) 初始化例程失败
- 使用 GCC 的静态和动态链接
- 静态链接MSVC库,动态链接Qt
- 在动态链接中,.exe如何知道在更新库时在哪里搜索库?
- 如何强制Windows.h在Visual Studio中静态链接而不是动态链接?
- 对应于 stdio.h 的库文件是动态链接还是静态链接