关于解决QT报错cannot find -lxxx(xxx为被调模型)和undefined reference to’_imp__ZN11/14xxx(xxx同上)的一种方法

前情提要

我的项目分为计算模块(被调)和显示模块(调用),每一模块有对应的.c和.cpp文件。显示模块需要调用计算模块的方法。
而在我更改完计算模块的函数,在显示模块调用时出现了这个错。(每次被调模块修改时都已经执行过qmake和构建)

问题分析

应该是被调模块的头文件没有被调用模块正确包含,以及lib文件没有正确被使用。

解决方案

  1. 在调用模块的文件夹下新建一个文件夹,命名为“include”,专门用于存放被调模块的头文件。再在同一位置命名一个“lib”文件,用于存放被调模块生成的动态链接库。
  2. 点击“项目”,“Active Project ”中选择被调模块,勾选Shadow build,构建目录选择刚才新建的lib文件夹的路径。
  3. 在调用模块的.pro文件中添加两句话
    INCLUDEPATH += include
    LIBS += -Llib/debug -lxxx(xxx为被调模块名称)
    (注意:lib/debug 也可改为被调模块构建目录的绝对路径, 如果需要加载别的被调模块,只需要往后加 -lxxx)
  4. 将被调模块的头文件(.h)文件复制到调用模块的include文件夹中。
  5. 注意,每次对被调模块进行更改,都需要重新复制一遍更改后的头文件到include文件夹中。
  6. 以后再有调用时出现这个情况,要么就是复制被调模块头文件进调用模块的include文件夹。要么就是在第二步中把生成的.a .o .dll文件复制进调用模块的lib文件夹。

QT报错cannot find -lxxx(xxx为被调模型)和undefined reference to’_imp__ZN11/14xxx(xxx为自己定义)相关推荐

  1. Qt报错:XXX does not name a type

    Qt开发,代码报错,提示: 'Algo' does not name a type. 原因:两个类相互引用了头文件. 把被调用类中对调用类投文件的引用删掉即可. 比如,有个全局文件G.h, 有个窗体文 ...

  2. Qt报错:cc1plus.exe: out of memory allocating 65536 bytes

    Qt报错:cc1plus.exe: out of memory allocating 65536 bytes 今天编译Qt程序,出现这个问题: cc1plus.exe: out of memory a ...

  3. QT报错:“pure virtual method called; terminate called without an active exception“

    QT报错:"pure virtual method called; terminate called without an active exception" 1. 错误出现 2. ...

  4. Ubuntu环境QT报错:-1 error: cannot find -lGL(解决99%)

    Ubuntu环境QT报错:-1 error: cannot find -lGL(解决99%) 本文参考:http://c.biancheng.net/view/3901.html 在Ubuntu18. ...

  5. Qt报错:cannot find -lws_32 collect2: error: ld returned 1 exit status

    Qt报错:cannot find -lws_32 collect2: error: ld returned 1 exit status cannot find -lws_32 报错图所示 尝试奇奇怪怪 ...

  6. Qt下Undefined reference to 'vtable for xxx'

    QT下遇到这种错误提示时候需要注意以下情况: 一.cpp文件里使用了Q_OBJECT 分析:qmake不会处理.cpp文件里的Q_OBJECT,所以如果在.cpp文件中有它的话将会产生undefine ...

  7. Qt报错unknown type name XXX

    今天使用QT时出现了一个错误,若是以下这类情况: class *p = new class() p->a=xx; p->b=xx; 会在后面报错: unknown type name 'p ...

  8. linux centos7 报错: “Repository base is listed more than once in the configuration“和“没有可用软件包 xxx“ 解决方法

    目录 报错描述 解决方案 总结 报错描述 我的 CentOS 7 的更新源使用的是直接从 163 镜像站上下载的更新源文件. 今天在使用 yum makecache 命令从更新服务器上把软件包的信息下 ...

  9. qt 报错pcap.h头文件不存在

    1.首先这个报错是因为没有安装libcap造成: centos下比较简单: 下载地址:http://www.tcpdump.org/   下载版本:wget -c http://www.tcpdump ...

最新文章

  1. Python Lambda函数的几种使用方法
  2. Codeforces 997E Good Subsegments (线段树)
  3. android 枚举类型比较大小写,Spring 3.0 MVC绑定枚举区分大小写
  4. java自学报告_Vi,Java,Ant和Junit自学报告
  5. opencv 高通滤波和低通滤波_滤波电路合集(低通滤波,CLCП滤波,DLC滤波,CRC П滤波)...
  6. 2011年计算机一级考试题,2011年计算机一级考试试题及答案
  7. 2015广州计算机网络试题及答案,2015广州大学计算机网络试卷-B卷及答案.doc
  8. C#删除字符串最后一个字符的几种方法
  9. 急救模式下安装rpm包
  10. 大数据分析过程中包含哪些技术
  11. hive表中加载数据
  12. 随机信号分析 matlab仿真实验,随机信号分析实验报告的(基于MATLAB语言).docx
  13. 魔鬼数学——大数据时代,数学思维的力量
  14. Win10怎么查找产品密钥? Win10产品密钥的3种查找方法
  15. java创新创业比赛项目教程_基于JavaWeb的计算机创新创业平台的功能设计与实现...
  16. 错误: -source 1.6 中不支持 diamond 运算符的解决办法
  17. Linux分区efi,什么时候建立分区的时候需要建立EFI分区
  18. HDMI 连接笔记本与显示器
  19. 融云 CEO 董晗:国产化进程加速,助推政企数智办公平台深化发展
  20. WAP(wml)开发问答

热门文章

  1. 25,UC(04) .
  2. 小米路由器mini刷老毛子固件遇到的问题
  3. 湖南德山监狱重刑犯凿墙脱逃 警方悬赏5万缉凶
  4. 测鬼记(上)——回岗(十)
  5. hdu1827 1269 2767 强连通分支 刷水
  6. mysql无法生成备份产生读锁_mydumper 备份原理和使用方法(备份mysql)
  7. 什么是“真AI相机”
  8. Linux、网络、计算机基础知识
  9. 萌新记录自己刷过的题
  10. 解决dell 15R 双显卡笔记本桌面右键点击反应慢的问题