QGiS Windows Source Build
-
@JonB
Apologies for the confusion. I’ve deleted the previous post and will keep my questions in one place from now on.I successfully included the library, but when I try to display the map in Qt, I encounter the following error (see screenshot). Any suggestions on how to resolve this issue?
-
@abhishek999 You're not linking properly one of the required libs. Please show your pro file (as text).
-
QT += core gui widgets xml CONFIG += c++17 # QGIS include directory INCLUDEPATH += C:/OSGeo4W/apps/qgis-ltr/include INCLUDEPATH += C:/OSGeo4W/apps/qgis/bin INCLUDEPATH += C:/OSGeo4W/apps/Qt5/bin INCLUDEPATH += C:/OSGeo4W/apps/qgis-ltr/include/qgis INCLUDEPATH += C:/OSGeo4W/share/proj/proj.db # QGIS library directory with required libraries LIBS += -LC:/OSGeo4W/apps/qgis-ltr/lib -lqgis_core -lqgis_gui -lqgis_analysis -lqgis_3d -lqgis_native SOURCES += \ main.cpp \ mainwindow.cpp HEADERS += \ mainwindow.h FORMS += \ mainwindow.ui # Default rules for deployment. qnx: target.path = /tmp/$${TARGET}/bin else: unix:!android: target.path = /opt/$${TARGET}/bin !isEmpty(target.path): INSTALLS += target
-
@abhishek999 What exact Qt version did you use to build QGIS? Is it the same you're using to build the application?
-
@abhishek999 You did not answer the second question.
-
@jsulm
qt version 5.15.2
qgis version QGIS 3.34.12pro file
QT += core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++17 # QGIS include directory # QGIS include directory INCLUDEPATH += C:/OSGeo4W/include INCLUDEPATH += C:/OSGeo4W/apps/qgis-ltr-dev/include INCLUDEPATH += C:/Qt/5.15.0/msvc2019_64/include/QtXml # QGIS library directory with required libraries LIBS += -LC:/OSGeo4W/apps/qgis-ltr-dev/lib -lqgis_core -lqgis_gui -lqgis_analysis -lqgis_3d -lqgis_native # You can make your code fail to compile if it uses deprecated APIs. # In order to do so, uncomment the following line. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 SOURCES += \ main.cpp \ # Default rules for deployment. qnx: target.path = /tmp/$${TARGET}/bin else: unix:!android: target.path = /opt/$${TARGET}/bin !isEmpty(target.path): INSTALLS += target
main.cpp file
-
@abhishek999 This also does not answer my question.
Again: did you use same Qt version to build QGIS as you use to build your app?And why do you have this in your pro file:
INCLUDEPATH += C:/Qt/5.15.0/msvc2019_64/include/QtXml
There is no need to add Qt include folders to the include path, you just have to enable the Qt modules you want to use in "QT +="
-
You say you are using Qt 5.15.2 but your include path says Qt 5.15.0? Which one is correct?
And post code as text, don't post images please.
-
i reinstall qt and my version Qt 5.15.0 now.
@jsulm i did not understand can you please tell me wich version i have to use if i am using Qt 5.15.0 and along with download link. -
@abhishek999 said in QGiS Windows Source Build:
can you please tell me wich version i have to use if i am using Qt 5.15.0
Use same Qt version to build QGIS and your app...
-
@abhishek999 said in QGiS Windows Source Build:
i did not understand can you please tell me wich version i have to use if i am using Qt 5.15.0 and along with download link.
It doesn't matter which version exactly, as long as it works... The important thing is that you use the same to build QGIS and your programs.