Qt creator: c++11 compilieren funktioniert nur bedingt

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
hulox
Beiträge: 6
Registriert: 03.03.2014 14:34:04

Qt creator: c++11 compilieren funktioniert nur bedingt

Beitrag von hulox » 03.03.2014 15:15:10

Hallo zusammen,

letzens habe ich Qt creator in debian wheezy installiert. In den Repositorys von Debian befand sich soweit ich weiß die Version qtcreator (2.5.0-2) . Wenn ich einen Code habe der ohne c++11 nicht funktioniert möchte qtcreator diesen Code nicht compilieren obwohl ich

Code: Alles auswählen

LIBS+=-lncurses CONFIG+=c++11
zu den Erstellungsschritten für qmake, in qtcreator , hinzufüge. Ich habe daraufhin qtcreator gelöscht und mir mal den Quellcode der aktuellen Version heruntergeladen. Dort habe ich exakt das gleiche Problem :(
Ich sollte dazu sagen das mein Compiler g++-4.7 , c++11 ausreichend für meine Projekte unterstützt. Darum kann ich auch mein komplettes Programm, das ja c++11 braucht, problemlos mit einer Makefile compilieren.
Wenn ich

Code: Alles auswählen

QMAKE_CXXFLAGS += -std=c++11
zu meiner .pro Datei hinzufüge, dann kann ich auch von Qt creator erfolgreich compilieren.
Meine Frage: Wie kann ich c++11 im qtcreator aktivieren? Auf meinem Notebook, auf dem momentan Ubuntu und qtcreator läuft habe ich damit keine Probleme.

Gruß

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: Qt creator: c++11 compilieren funktioniert nur bedingt

Beitrag von peschmae » 03.03.2014 17:39:34

Ich benutze ja kein qmake, sondern cmake für mein Zeugs. Da ist die Integration in Qtcreator eigentlich so, dass ich einfach "File | Open File or Project" mache und dann dort meine CMakeLists.txt auswähle. Dann führt er die auch brav aus mit allem drum und dran was da drin steht, ohne sich zu erdreisten an irgendwelchen Compilerparametern rumzuschrauben. Geht das nicht etwa auch einfach analog mit einer qmake *.pro Datei?

Ansonsten wäre natürlich z.B. eine Fehlermeldung durchaus was nützliches anhand dessen man dir eventuell weiterhelfen können sollte.

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

hulox
Beiträge: 6
Registriert: 03.03.2014 14:34:04

Re: Qt creator: c++11 compilieren funktioniert nur bedingt

Beitrag von hulox » 05.03.2014 20:04:37

Hi Peschmä,

sorry das ich erst so spät antworte. Ich habe gedacht das ich bei einem neuen Post im Forum per E-Mail informiert werde. Dies war aber nicht der Fall...
Wenn ich

Code: Alles auswählen

CONFIG+=c++11
zu den Erstellungsschritten hinzufüge, bekomme ich die gleichen Compilerfehler als wenn ich es weglassen würde. Hier einmal der Fehler:

Code: Alles auswählen

/usr/include/c++/4.7/bits/c++0x_warning.h:32: Fehler: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
Geht das nicht etwa auch einfach analog mit einer qmake *.pro Datei?
Wie ich ja schon in meinem Vorpost geschrieben habe geht dies wenn ich

Code: Alles auswählen

QMAKE_CXXFLAGS += -std=c++11
zur *.pro Datei hinzufüge. Dann funktioniert alles ohne Probleme.
Mich wundert es nur warum es bei Ubuntu funktioniert und bei Debian mit Gnome 3 nicht?
Wie gesagt tritt der Fehler bei der mit apt-get installierten Version als auch mit der selbst kompilierten Version auf.
Meine Version:

Code: Alles auswählen

Qt Creator 3.1.81 based on Qt 4.8.2
Gruß

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: Qt creator: c++11 compilieren funktioniert nur bedingt

Beitrag von peschmae » 05.03.2014 20:34:47

Kann sein dass das mit "CONFIG += c++11" erst ab Qt5 bzw. Debianqt5-qmake funktioniert? C++11 ist ja so schrecklich neu...
[Edit]Hab das mal kurz ausprobiert, geht tatsächlich erst ab dem qmake von Qt5, nicht mit dem von Qt4...[/Edit]

Ist aber eigentlich auch recht egal, solange es funktioniert mit den CXXFLAGS=--std=c++11 - was wirklich anderes kann der CONFIG-Eintrag ja auch nicht zur Folge haben. ;-)

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

hulox
Beiträge: 6
Registriert: 03.03.2014 14:34:04

Re: Qt creator: c++11 compilieren funktioniert nur bedingt

Beitrag von hulox » 13.03.2014 16:47:26

hmm, ich bekomme es einfach nicht hin qt5-default zu installieren.
Hier meine Vorgehensweise:

Ich möchte qt5-default installieren. Diese Paket befindet sich in sid.

Code: Alles auswählen

deb http://ftp.de.debian.org/debian/ sid main
habe ich darufhin zur sources.list hinzugefügt.
Nach einem

Code: Alles auswählen

apt-get update
, habe ich mit einem

Code: Alles auswählen

apt-get install qt5-default
qt5 installiert.
Am ende der Installation stand das ich meinen fglry treiber und die xorg.conf löschen sollte.Dies habe ich mit:

Code: Alles auswählen

apt-get purge fglrx*
und mit

Code: Alles auswählen

rm /etc/X11/xorg.conf
erledigt. Nach einem reboot war meine komplette Oberfläche weg und ich konnte mich nur noch über die textkonsole anmelden. Wenn ich dann dort

Code: Alles auswählen

startx
eingab, wurde der gesammt Bildschirm scwarz und ich konnte nur noch meinen Cursor sehen den ich mit der Maus bewegen konnte. Ich hab versucht irgendwie mein System wiederherzustellen. Der Aufruf von

Code: Alles auswählen

Xorg -configure
gibt einen return status von 1 zurück. Es wurde also keine neue xorg.conf erstellt. Ich habe außerdem ausprobiert was passiert wenn ich

Code: Alles auswählen

apt-get purge qt5-default
eingebe. Qt5 war danach weg. Die grafische Oberfläche konnte ich damit nicht wieder herstellen. Schließlich habe ich etwas gemacht an das ich mich nicht mehr erinnern kann, dass ziemlich viele Programme gelöscht hat......
Als ich mein System neu aufgesetzt habe, habe ich es nochmal probiert. Allerdings hatte ich danach auch keine Grafische Oberfläche.
Danach habe ich es wieder neu aufgesetzt und alle Programme installiert die ich zum arbeiten brauche.
Was mache ich falsch? Handelt es sich hier um einen Bug? Es kommt schließlich aus einem unstable repository.
Und sorry das ich erst so spät antworten konnte.

Gruß

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: Qt creator: c++11 compilieren funktioniert nur bedingt

Beitrag von peschmae » 13.03.2014 18:02:57

hulox hat geschrieben: Am ende der Installation stand das ich meinen fglry treiber und die xorg.conf löschen sollte.Dies habe ich mit:
...
Das ist doch sehr ungewöhnlich, dass dir apt-get sowas sagt. Das kann eigentlich nicht mit Qt in Zusammenhang stehen. Hast du noch irgendwo den genauen Wortlaut?

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

hulox
Beiträge: 6
Registriert: 03.03.2014 14:34:04

Re: Qt creator: c++11 compilieren funktioniert nur bedingt

Beitrag von hulox » 13.03.2014 18:08:58

Ja ich habe mich auch gewundert. Ich habe leider nicht mehr das, was da genau stand. :( Es stand aber auf jeden fall das ich die xorg.conf und die fglrx treiber löschen sollte.
Bei meiner 2. Neuaufsetzung habe ich ja auch direkt qt5-default installiert ohne das irgendein fglrx treibe installiert war.
Als ich mein System neu aufgesetzt habe, habe ich es nochmal probiert. Allerdings hatte ich danach auch keine Grafische Oberfläche.
Gruß

Antworten