Problem: Compile QIBASE

Verschiedenes zu Qt
Antworten
extreme001
Beiträge: 3
Registriert: 10. Oktober 2009 02:28
Kontaktdaten:

Problem: Compile QIBASE

Beitrag von extreme001 »

Hallo QT-Nutzer!

Ich bin neu hier im Forum aber nicht ganz unerfahren. Bisher habe ich wxWidgets und die MFC genutzt und bin sehr sicher in Standard c++ und in den beiden erwähnenten Frameworks. Jetzt möchte ich gerne meinen Horizont erweitern und QT zu meiner Liste hinzufügen.

Ich nutze Firebird als Datenbank und möchte diese gerne zu meinem Projekt hinzufügen. Bisher habe ich die Tutorials zur Kompilierung befolgt, bin aber immer auf Probleme gestossen. Ich habe deshalb die Datei D:\Qt\2009.04\qt\src\plugins\sqldrivers\ibase\ibase.pro geändert und kompiliert.
Das lief auch ohen Fehler durch, aber immer erscheint die Fehlermeldung "Driver not loaded"....also nicht erfolgreich.

Meine ibase.pro sieht so aus:

Code: Alles auswählen

TARGET	 = qsqlibase

HEADERS		= ../../../sql/drivers/ibase/qsql_ibase.h
SOURCES		= main.cpp \
		  ../../../sql/drivers/ibase/qsql_ibase.cpp

INCLUDEPATH += D:\Programme\Firebird\Firebird_2_1\include
LIBS += D:\Programme\Firebird\Firebird_2_1\lib\fbclient_ms.lib


unix:!contains( LIBS, .*gds.* ):!contains( LIBS, .*libfb.* ):LIBS    *= -lgds

win32:!contains( LIBS, .*gds.* ):!contains( LIBS, .*fbclient.* ) {
	!win32-borland:LIBS *= -lgds32_ms
	win32-borland:LIBS  += gds32.lib
}

include(../qsqldriverbase.pri)
Bisher habe immer IBPP benutzt...für wxWidgets und MFC. Kann mir jemand helfen und beschreiben wie ich Firebird auf QT anpasse?

Ich danke im vorrauss.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Immer wieder das Gleiche:
- ist das Plugin vorhanden (plugins/sqldrivers)
- sind auch alle Dependencies vorhanden (dependency walker)
- ist das Qt mit de du versuchts das Plugin zu laden auch das Gleiche mit dem das Plugin kompiliert wurde?

das wird jede Woche einmal durchgekaut...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
extreme001
Beiträge: 3
Registriert: 10. Oktober 2009 02:28
Kontaktdaten:

Beitrag von extreme001 »

Ok...schon klar.

Ich habe auch die SuFu benutzt, aber leider konnte mir kein Suchergebnis wirklich weiterhelfen.

Ich habe nun die .pro kompiliert und nun habe ich im Verzeichnis D:\Qt\2009.04\qt\src\plugins\sqldrivers\ibase\debug die lib und die dll (libqsqlibased4.a, qsqlibased4.dll).

Die beiden Dateien habe ich kopiert. Einmal in mein Programmverzeichnis und einmal nach D:\Qt\2009.04\qt\plugins\sqldrivers.

Ich starte mein Programm und die Fehlermeldung "Driver not loaded" erscheint. Also geht nicht...

Was mich auch noch beschäftigt ist, das es nur ein DEBUG-Build gibt, als RELEASE kompilieren geht gar nicht.

Gibt es noch Ideen die mir jetzt aus der Patsche helfen? Mir ist schon klar das ich mich noch allgemein mit QT beschäftigen muss, aber dieses Problem hätte ich schon gern gelöst. Ach...der Pfad zum Firebird-BIN Verzeichnis habe ich in meine PATH-Variable eingetragen.


Ich danke vielmals.
extreme001
Beiträge: 3
Registriert: 10. Oktober 2009 02:28
Kontaktdaten:

Beitrag von extreme001 »

Problem gelöst.

Qt deinstalliert, ibase.pro bearbeitet und include-pfad angegeben + lib. Im Creator ließ sich die ibase.pro kompilieren und verknüpfen.

Danke!
Roadrunner
Beiträge: 7
Registriert: 31. März 2010 01:04

Beitrag von Roadrunner »

Die fbclient.dll aus dem firebird\bin Verzeichnis muss in dem Verzeichnis liegne, in dem man seine exe compiliert; dann funktioniert es.

Den Tip hab ich auch 'hier' gefunden, aber ueber Suchmaschienen landet
man eher hier - und den restlichen Leuten wollt ich die lange Suche
ersparen.

... von daher: sorry fuer die Redundanz.

Roadrunner
Antworten