C++ 将qscintula库添加到Qt问题
我正试图将其添加到我的Qt项目中。该库已成功安装,但类上有许多未定义的引用(例如,未定义对“qscistintula::qscistintula(QWidget*)”的引用或未定义对“qscistintula::SetFont(QFont const&)”的引用) 这是我的.pro文件:C++ 将qscintula库添加到Qt问题,c++,qt,qmake,qscintilla,C++,Qt,Qmake,Qscintilla,我正试图将其添加到我的Qt项目中。该库已成功安装,但类上有许多未定义的引用(例如,未定义对“qscistintula::qscistintula(QWidget*)”的引用或未定义对“qscistintula::SetFont(QFont const&)”的引用) 这是我的.pro文件: QT += core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TARGET = QscintillaTest TEMPLATE =
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = QscintillaTest
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
win32:CONFIG(release, debug|release): LIBS += -L$$PWD/./QScintilla/Qt4Qt5/release/ -lqscintilla2
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/./QScintilla/Qt4Qt5/debug/ -lqscintilla2
else:unix: LIBS += -L$$PWD/./QScintilla/Qt4Qt5/ -lqscintilla2
INCLUDEPATH += $$PWD/./QScintilla/Qt4Qt5/
DEPENDPATH += $$PWD/./QScintilla/Qt4Qt5/
我希望有人能帮助我
编辑:
添加-lqscintra2
后,我得到以下错误:
Cannot find -lqscintilla2
您的.pro文件缺少以下内容:
LIBS += -lqscintilla2
您链接到的教程中也提到了这一点
您现在拥有的-L
仅将目录添加到库搜索路径,但它本身不会导致添加任何新库。基本上,您永远不会只使用-L
,因为它不会单独执行任何操作(在正常的工具链设置中)。-l
开关用于告诉实际库添加到链接中,然后链接器搜索它拥有的库路径。所以,如果您在自己的目录中有库,则需要两个开关
编辑后:如果缺少实际的库文件,则应确保
- 你实际上已经建造了它
- 您已经构建了正确的调试/发布版本,或者两者都有
- 生成的库位于预期目录中,与application.pro文件中的内容匹配
-L
添加到其中的目录。这是否包括包含您的qscintila2.dll
或libqscintila2.so
(取决于操作系统)的目录?通常,您不应该在有人回答后展开/更改问题(因为这会使答案无效),但在这种情况下,可以继续编辑问题以使用此修复更新.pro文件,然后包括实际的link命令,它给出了错误(当前唯一的答案是我的,在这种情况下我不介意)。好的,你可以看到我是新的哈哈,谢谢你的建议,我编辑了这个问题。因此,我在目录中没有任何qscintila2.dll
或libqscintila2.So
。哦,更准确地说,我在linux上(fedora 24)@m.Duchemin那么,你可能忘了构建qscintula库了吗?:)