Qt程序中动态库的隐式调用
来源:互联网 发布:遥感数据的特点 编辑:程序博客网 时间:2024/05/22 13:21
这几天在写程序中时候,用到了一个第三方库。在下载完他的源码编译后,不知道怎么使用,后来在网上找了找了一些资料查看了一些文档。终于解决了问题!
动态库和静态库的介绍在在前的博客:http://blog.csdn.net/andy_93/article/details/52708678 已经介绍过。 现在具体讲讲Windows下和Liux下的使用
首先是windows下的使用:
准备库:
我们在编译完库的时候或者是使用库的时候需要有三样东西:XXX.lib、XXX.dll、include文件夹包括库的头文件
在这里需要说明的是,有的库的dll和lib是区分Debug和Release版本的。所以根据不同的版本对应不同的库。
修改pro文件:
<pre name="code" class="cpp">我们假设我们的lib、include、bin三个文件夹在同一级目录lib:库文件夹, 存放XXX.dll 和XXX.lib, 如果我们要区分Debug和Release版本的库,建议lib文件夹下建 立Debug和Release文件夹放各自的库文件include: 库头文件文件夹 bin: 可执行文件夹win32{INCLUDEPATH += ./../include //包含库头文件Release:QMAKE_LIBDIR = ./../lib/Release //库路径Release:LIBS += -lXXX\ //使用到的库 -lXXXDebug:QMAKE_LIBDIR = ./../lib/DebugDebug:LIBS += -lXXX\ -lXXX}以上的XXX是库的名字,去掉后缀,如QMyDialog.dll 直接-lQMyDialog就行了。注意:我们在LIBS +=的时候之所以没有用-L来指明库的路径 是因为我们的QMAKE_LIBDIR已经指明了路径。使用库: 在需要使用库的文件中添加头文件#include“XXX.h” 然后调用库的方法即可使用。执行: 在执行可执行文件之前,将用到的库XXX.dll拷贝到bin目录下,与可执行文件放到同一级目录即可运行。Linux下的使用:
Linux下的使用和Windows下的使用大同小异,只是在准备库的时候Linux下生成的是libXXX.so库文件,不需要XXX.lib然后其他的就和Windows下一样了。
修改pro文件:unix{ QMAKE_LIBDIR = ./../lib LIBS += -lXXX \ -lXXX}
使用和执行和windows下一样的使用。都是添加头文件,然后调用库的东西。
1 0
- Qt程序中动态库的隐式调用
- Qt程序中动态库的隐式调用
- Qt中调用VC6生成的动态库DLL文件
- vs 中调用QT的动态连接库
- QT中调用外部程序的方法
- QT中调用外部程序的方法
- QT调用动态库的方法
- Qt调用DLL动态库接口函数程序崩掉
- Qt调用DLL动态库接口函数程序崩掉
- QT中动态链接库的建立,以及在QT中的引用,C++程序中的引用
- QT中动态链接库的建立,以及在QT中的引用,C++程序中的引用
- C程序中调用C++动态库
- QT隐式调用动态链接库(转)
- 程序显式调用和隐式调用linux动态链接库(*.so)的区别。
- Qt调用qt生成的dll 显式和隐式(静态动态)
- QT Creator中调用动态库文件例程
- Qt 在程序中调用外部程序
- QT中调用外部程序:QProcess的使用
- 流水不腐 户枢不蠹
- Activity向Fragment传值
- 分布式服务框架 Zookeeper -- 管理分布式环境中的数据
- java使用dbcp2数据库连接池
- 友盟推送jar文件与okio.jar冲突
- Qt程序中动态库的隐式调用
- tomcat修改端口号
- 白云一键重装系统win7旗舰版
- 关于Android沉浸式状态栏的一个做法
- Xcode 8 适配(踩坑)
- IE8加载后台数据失败(location.origin兼容问题)
- 配置管理工具 01 版本控制 gerrit introduction
- CentOS6.5安装Docker
- app-release-unsigned.apk is not signed