QT pro包含库文件目录符号含义
直接调用DLL
需要三个文件,头文件(.h)、导入库文件(.lib)、动态链接库(.dll),具体步骤如下:
注意:在qtCreaor中生成的动态库库文件文件为.a结尾,vs生成的动态链接库是.lib结尾
1、首先我们把 .h与.lib/.a 文件复制到程序当前目录下,然后再把dll文件复制到程序的输出目录(如果是debug版的话就将mydlld.dll放在此文件夹下,Release相同)。(注意:如果dll是用C写的,因此要用 extern "C" { #include "ExcelApI.h" }
2、下面我们在pro文件中,添加 .lib文件的位置: (注意全名是libmydlld.a或是libmydll.a(gcc下的格式要求))
INCLUDEPATH+=./
LIBS+=-LE:/QTDemo/QTDLL/-lExcelApI //绝对路径
LIBS +=-L. -lExcelApI //相对路径
-L参数指定 .lib/.a文件的位置
-l 参数指定导入库文件名(不要加扩展名)
导入库文件的路径中,反斜杠用的是向右倾斜的 (考虑到程序的兼容或者移植性,选择当前目录比较好)
注意事项:
1)+=这个符号是连接在一起的,不要分开,写成+ = ,这样是错的!
2)+=的左右两边可以有空格,也可以没有空格
3)-L之后紧接着就跟着.lib文件所在的目录,比如,我的目录是在D盘下的QTDemo目录下的QTDLL目录
注意,是紧跟着,不要分开,分开就错啦!
4)-l后面跟着的是.lib的文件名。
比如你的.lib文件时ExcelApI .lib,不要写成-lExcelApI.lib,不要带后缀,要写成-lExcelApI,同样,-l后面也没有空格