QtCreator und 64Bit Integer-Variablen

Du bist neu in der Welt von C++? Dann schau hier herein!
Antworten
KartoffelKiffer
Beiträge: 101
Registriert: 27. Februar 2008 15:59

QtCreator und 64Bit Integer-Variablen

Beitrag von KartoffelKiffer »

Hallo,

ich habe gestern Abend direkt den neusten QtCreator und die Qt4.5 installiert.

Jetzt versuche ich ein paar Funktionen zu migrieren, die mit 64Bit Integern (s und uns) arbeiten. Doch leider kommt schon beim Erstellen die Fehlermeldung, dass ich keinen 64bit Support habe.

Leitet mich die Fehlermeldung jetzt in die Irre, oder stimmt es wirklich, dass ich standardmäßig mit dem MinGW keine 64Bit Integer deklarieren kann?

Gibt es evtl. eine Einstellung im QtCreator oder für MinGW, die ich übersehen habe?

Über Hilfe wäre ich sehr dankbar.

PS: Bei den Funktionen handelt es sich um die Embedded InnoDB, die ich in eine Qt-Applikation einpflegen möchte und bei den Variablen handelt es sich um die ib_i64_t und ib_u64_t. Beides InnoDB-Spezifische Variablen, weshalb ich nicht näher darauf eingegangen bin.



Mit freundlichen Grüßen,
KK
Zuletzt geändert von KartoffelKiffer am 19. Juni 2009 14:12, insgesamt 1-mal geändert.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Du meinst der Compiler beschwert sich dass ib_i64_t nicht vorhanden ist? Was hat das mit Qt zu tun? Ich würde eher sagen Du solltest mal schauen wie Deine DB konfiguriert ist.
Der QtCreator ist nur eine IDE - wenn ein Typ nicht definiert ist hat dies definitiv nichts mit dem QtCreator zu tun...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
KartoffelKiffer
Beiträge: 101
Registriert: 27. Februar 2008 15:59

Beitrag von KartoffelKiffer »

Hallo Christian,

ich frage deshalb, weil ich es mit CMake und nmake übersetzt bekomme, nur der MinGW weigert sich.

In meine .pro-Datei habe ich folgende Zeilen hinzugefügt

Code: Alles auswählen

LIBS += C:\Qt\2009.01\qt\lib\zdll.lib \
    C:\Qt\2009.01\qt\lib\innodb.lib
INCLUDEPATH += C:\Qt\2009.01\qt\include\InnoDB
Dies sind die Pfade zu den erforderlichen libs und include-Dateien.

Gibt es evtl. sonst noch eine Stelle an der ich die Pfade setzen muss, damit mein Programm die Typen als solche erkennt?



Mit freundlichen Grüßen,
KK
Zuletzt geändert von KartoffelKiffer am 19. Juni 2009 14:12, insgesamt 1-mal geändert.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Wenn es mit CMake geht würde ich einfach mal die Flags vergleichen... aber das hat definitiv nichts mit Qt zu tun.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
RHBaum
Beiträge: 1436
Registriert: 17. Juni 2005 09:58

Beitrag von RHBaum »

ich frage deshalb, weil ich es mit CMake und nmake übersetzt bekomme, nur der MinGW weigert sich.
nmake ist MS ... also du uebersetzt das ding mit dem MS compiler ? und da funktioniert es ?

Nun willst das mit dem mingw (gcc) uebersetzen ?
Hasst du auch 2 versionen der QT installiert ???
Weil die QT ist nicht Compilerneutral, eine version kann also nur fuer dem mingw oder den MS compiler lauffaehig sein.

Da die 64Bit integer typen ned gleich sind, vermut ich das dein problem daher kommt, das heisst das in irgendweiner Compilerspezifischen h datei deine qint64 Type auf __int64 oder so getyptdeft werden, den es unter mingw ned gibt, da heissen die anders !

Ciao ...
Antworten