QIBASE Qt 4.7.3 driver assembly plugin

I am trying to create a QIBASE driver in Qt 4.7.3

ibase.pro

TARGET = qsqlibase SOURCES = main.cpp INCLUDEPATH += "C:/Program Files/Firebird/Firebird_2_0/include" "C:/QtSDK/Desktop/Qt/4.7.3/mingw/lib" LIBS += -L"C:/Program Files/Firebird/Firebird_2_0/lib/fbclient_ms.lib" -L"C:/Program Files/Firebird/Firebird_2_0/lib/fbclient_bor.lib" include(../../../sql/drivers/ibase/qsql_ibase.pri) include(../qsqldriverbase.pri) 

SQL \ Drivers \ IBase \ qsql_ibase.pri

 HEADERS += $$PWD/qsql_ibase.h SOURCES += $$PWD/qsql_ibase.cpp unix { !contains(LIBS, .*gds.*):!contains(LIBS, .*libfb.*):LIBS += -lgds } else { !contains(LIBS, .*gds.*):!contains(LIBS, .*fbclient.*) { win32-borland:LIBS += fbclient_bor.lib else:LIBS += -lfbclient_ms } } 

Output:

 C:\QtSDK\src\src\plugins\sqldrivers\ibase>qmake C:\QtSDK\src\src\plugins\sqldrivers\ibase>make make -f Makefile.Debug all make[1]: Entering directory `C:/QtSDK/src/src/plugins/sqldrivers/ibase' g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel oc -mthreads -Wl -shared -Wl,--out-implib,c:/QtSDK/src/plugins/sqldrivers/libqsq libased4.a -o ../../../../plugins/sqldrivers/qsqlibased4.dll tmp/obj/debug_share d/main.o tmp/obj/debug_shared/qsql_ibase.o tmp/obj/debug_shared/moc_qsql_ibase.o -L'c:/QtSDK/src/lib' -L'c:/QtSDK/src/lib' tmp/obj/debug_shared/qsqlibased_reso urce_res.o "-LC:/Program Files/Firebird/Firebird_2_0/lib/fbclient_ms.lib" "-LC:/ Program Files/Firebird/Firebird_2_0/lib/fbclient_bor.lib" -lQtSqld4 -lQtCored4 c:/qtsdk/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe: cann ot find -lQtSqld4 collect2: ld returned 1 exit status make[1]: *** [../../../../plugins/sqldrivers/qsqlibased4.dll] Error 1 make[1]: Leaving directory `C:/QtSDK/src/src/plugins/sqldrivers/ibase' make: *** [debug-all] Error 2 

ld.exe: cannot find -lQtSqld4

in C: \ QtSDK \ Desktop \ Qt \ 4.7.3 \ mingw \ lib libQtSqld4.a exist

before that I had the error "C: \ QtSDK \ src \ bin moc.exe not found" and I copied the moc.exe file to "C: \ QtSDK \ src \ bin."

0
source share
1 answer

the problem is solved by the advice of colleagues

You only need to modify the ibase.pro file and specify the path to the header files in the source directory not in the SDK directory

ibase.pro

 TARGET = qsqlibase SOURCES = main.cpp INCLUDEPATH += "C:/Program Files/Firebird/Firebird_2_0/include" C:/tmp/src/include LIBS += "C:/Program Files/Firebird/Firebird_2_0/lib/fbclient_ms.lib" include(../../../sql/drivers/ibase/qsql_ibase.pri) include(../qsqldriverbase.pri) 
0
source

Source: https://habr.com/ru/post/1390874/


All Articles