Build driver plugin QIBASE Qt 4.7.3
-
I try to build QIBASE driver in Qt 4.7.3
@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.cppunix {
!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 directoryC:/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 was an error "C:\QtSDK\src\bin moc.exe not found" and i copied moc.exe into "C:\QtSDK\src\bin."
-
Hi!
I had success. I can build it. I opened the pro with QtCreator and compiled it. Works very well. Try QtCreator...
-
Please describe step by step what did you do. I try build it with Creator and get error
@process_begin: CreateProcess(NULL, C:/QtSDK/src2/bin/moc.exe ......... sql/drivers/ibase/qsql_ibase.h -o tmp/moc/release_shared/moc_qsql_ibase.cpp, ...) failed.@ -
Did you got an error-code?
Or something helpful from g++/make ?
I will post my project files and config here...but later
-
Hey!
Here's my ibase.pro:
@#TARGET = qsqlibase
#SOURCES = main.cpp
#include(../../../sql/drivers/ibase/qsql_ibase.pri)
#include(../qsqldriverbase.pri)
TARGET = qsqlibaseSOURCES = main.cpp
#include(../../../sql/drivers/ibase/qsql_ibase.pri)include(../qsqldriverbase.pri)
INCLUDEPATH += "C:\Program Files (x86)\Firebird\Firebird_2_5\include"
LIBS += "C:\Program Files (x86)\Firebird\Firebird_2_5\lib\fbclient_ms.lib"
#LIBS+=-lfbclient_msLIBS += "C:\Program Files (x86)\Firebird\Firebird_2_5\bin\fbclient.dll"
#LIBS+=-lfbclientinclude(../../../sql/drivers/ibase/qsql_ibase.pri)
@ -
the problem is solved by the advice of colleagues
Need to change the file ibase.pro only and specify the path to header files in the source directory not in directory of the SDK
@ibase.pro
TARGET = qsqlibaseSOURCES = 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)@
-
Almost the same...