码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • qt window下动态库两种用法


    1.库所有文件在build路径下

    1.include + lib +dll

    如openssl库,结构如下

    openssl
    include头文件
    liblibeay32.lib
    ssleay32.lib
    dlllibeay32.dll
    ssleay32.dll
    用法1
    1. INCLUDEPATH += openssl/include
    2. LIBS += -L"openssl/lib" -llibeay32
    3. LIBS += -L"openssl/lib" -lssleay32

    用法2
    1. INCLUDEPATH += openssl/include
    2. LIBS += -Lopenssl/lib/llibeay32.lib
    3. LIBS += -Lopenssl/lib/lssleay32.lib

    运行时exe目录下包含多个dll

    2.include + dll

    如zip库,结构如下

    quazip
    include头文件
    dllquazipd.dll
    quazip.dll
    zlib1.dll
    用法
    1. INCLUDEPATH += quazip/include
    2. CONFIG(debug, debug|release) {
    3.     LIBS += -L"quazip/lib" -lquazipd
    4. } else {
    5.     LIBS += -L"quazip/lib" -lquazip
    6. }

    运行时exe目录下包含多个dll

    2.库文件的include、lib在项目路径,dll在build路径

    情况有所不同,需要前面加$$PWD来指定项目路径,如下

    用法
    1. INCLUDEPATH += $$PWD/quazip/include
    2. CONFIG(debug, debug|release) {
    3.     LIBS += -L"$$PWD/quazip/lib" -lquazipd
    4. } else {
    5.     LIBS += -L"$$PWD/quazip/lib" -lquazip
    6. }

    3.实际开发的用法

    bin实际运行的可执行文件和必须的库文件
    include库相关头文件
    lib调试库(回合bin中有同样的文件)
    src项目文件
    resources资源
    xx.pro
    1. DESTDIR = $$PWD/bin
    2. OBJECTS_DIR  = temp/obj
    3. UI_DIR       = temp/ui
    4. MOC_DIR      = temp/moc
    5. RCC_DIR      = temp/rcc
    6. 关联库头文件和库时用$$PWD来指定

    xx.rc
    项目编译时会有多余的MakeFile、MakeFile.Debug、.qmake.stash,pro.user、qrc_res.cpp等中间文件
    其中moc、obj、rcc、ui、.o文件会在bin目录下,需要重新指定路径
    多余文件用.gitignore来过滤

  • 相关阅读:
    vue-插件
    Webinspect
    OneFlow框架添加算子实践:expand和repeat
    好多自恋性数
    为什么大型工程团队要在 Kubernetes 上进行测试?
    Java实用类(五) -Math类和指定范围的随机数
    测试工程师面试题,你都遇到过哪些呢?
    如何入门Python——学习Python的指南针
    随手笔记-Jackson -> @JsonFormat -> 失真问题解决
    从好玩到好用:程序员用AI提效的那些事儿 | 京东云技术团队
  • 原文地址:https://blog.csdn.net/ch593030323/article/details/127585480
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号