Qt静态调用dll为什么不成功呢
1个回答
展开全部
undefinedreferenceto'myQtAdd(int,int)'错误。
LIBS+=-LC:/Users/Administrator/Desktop/qtDll/-IaddDll这个-I应该是-l不行,我改成-l还是那个错误
直接写成LIBS+=C:/Users/Administrator/Desktop/qtDll/ADD.DLL看看
你的库中有这个方法吗?而且我看你的.h文件也没加到工程文件里面来啊。
有这个方法,动态调用成功了。
我把头文件加进工程
QT+=coregui
LIBS+=C:/Users/Administrator/Desktop/qtDll/addDll.lib
TARGET=qtDll
CONFIG+=console
CONFIG-=app_bundle
TEMPLATE=app
SOURCES+=main.cppHEADERS+=\addDll.h
对了,我用VC6创建的dll,是个动态链接库,把头文件和lib,dll放在工程目录,又把dll也放在了debug目录,不知道是不是放错了。
dll放错位置,只是会让你运行不了,编译是不会报错的。你那个库能行么?你用VC调用看看。或者你用Qt创建个动态库,试试能不能行。
#include<iostream
#include"addDll.h"
LIBS+=-LC:/Users/Administrator/Desktop/qtDll/-IaddDll这个-I应该是-l不行,我改成-l还是那个错误
直接写成LIBS+=C:/Users/Administrator/Desktop/qtDll/ADD.DLL看看
你的库中有这个方法吗?而且我看你的.h文件也没加到工程文件里面来啊。
有这个方法,动态调用成功了。
我把头文件加进工程
QT+=coregui
LIBS+=C:/Users/Administrator/Desktop/qtDll/addDll.lib
TARGET=qtDll
CONFIG+=console
CONFIG-=app_bundle
TEMPLATE=app
SOURCES+=main.cppHEADERS+=\addDll.h
对了,我用VC6创建的dll,是个动态链接库,把头文件和lib,dll放在工程目录,又把dll也放在了debug目录,不知道是不是放错了。
dll放错位置,只是会让你运行不了,编译是不会报错的。你那个库能行么?你用VC调用看看。或者你用Qt创建个动态库,试试能不能行。
#include<iostream
#include"addDll.h"
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询