Build-System
- Bebu
- Beiträge: 562
- Registriert: Mi Okt 21, 2009 6:19 pm
- Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!
Re: Build-System
Ich habe eine Request, wegen der Compileroptionen für CMake. Es wäre sehr praktisch, wenn der Wall Flag gesetzt werden kann, damit alle Warnungen ausgegeben werden. Wenn ich auf Code::Blocks entwickle, ohne CMake zu nutzen, bekomme ich bei Debugbuilds standardmäßig mehr Warnungen angegeben, als jetzt zum Beispiel bei Dedupe, wo ich so gut wie nie Warnungen erhalte. Entweder baue ich Dedupe aus Versehen immer als Release, oder der Warnungsflag fehlt.
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Build-System
Ist folgendes verhalten erwünscht: Wenn CMAKE_BUILD_TYPE auf Debug gesetzt ist, dann werden die Warn-flags hinzugefügt, sonst nicht?Bebu hat geschrieben:Ich habe eine Request, wegen der Compileroptionen für CMake. Es wäre sehr praktisch, wenn der Wall Flag gesetzt werden kann, damit alle Warnungen ausgegeben werden. Wenn ich auf Code::Blocks entwickle, ohne CMake zu nutzen, bekomme ich bei Debugbuilds standardmäßig mehr Warnungen angegeben, als jetzt zum Beispiel bei Dedupe, wo ich so gut wie nie Warnungen erhalte. Entweder baue ich Dedupe aus Versehen immer als Release, oder der Warnungsflag fehlt.
Bis ichs geändert habe kannst du -DCMAKE_CXX_FLAGS="-Wall -pedantic -ansi" setzen, und mit "make VERBOSE=1" kompilieren.
Haters gonna hate, potatoes gonna potate.
- Bebu
- Beiträge: 562
- Registriert: Mi Okt 21, 2009 6:19 pm
- Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!
Re: Build-System
Ich würde sagen, Warnungen sollte auch in Release nicht ganz abgeschaltet werden, wenn man auch darüber nachdenken kann, die Warnstufe herunterzusetzen.fat-lobyte hat geschrieben: Ist folgendes verhalten erwünscht: Wenn CMAKE_BUILD_TYPE auf Debug gesetzt ist, dann werden die Warn-flags hinzugefügt, sonst nicht?
Vielen Dank für den anderen Tipp, werde ich testen.fat-lobyte hat geschrieben: Bis ichs geändert habe kannst du -DCMAKE_CXX_FLAGS="-Wall -pedantic -ansi" setzen, und mit "make VERBOSE=1" kompilieren.
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Build-System
1) Sieht so aus als würde Kerli das Warnungen-Thema übernehmen. Ich freue mich, weitere Wünsche bitte bei ihm äußern.
2) Ich habs selber vorher ausprobiert, anscheinend ist VERBOSE=1 nichtmal notwendig (sondern eher störend). Du kannst auch ohne, da die GCC Warnungen auf stderr gehen, und die nicht von CMake gefiltert werden.
2) Ich habs selber vorher ausprobiert, anscheinend ist VERBOSE=1 nichtmal notwendig (sondern eher störend). Du kannst auch ohne, da die GCC Warnungen auf stderr gehen, und die nicht von CMake gefiltert werden.
Haters gonna hate, potatoes gonna potate.
- Bebu
- Beiträge: 562
- Registriert: Mi Okt 21, 2009 6:19 pm
- Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!
Re: Build-System
Ich habe auch den -pedantic flag weggelassen. Ich weiß auch ohne 7 Warnungen, das long long int nicht in jedem C++ Standard enthalten ist Das ganze lässt sich sogar mit Codeblocks kombinieren. Ich benutze jetzt diese Zeile um das Projekt von Cmake erstellen zu lassen und jetzt werden mir alle Warnungen angezeigt, die ich brauche:
Code: Alles auswählen
cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS="-Wall -ansi" -G "CodeBlocks - Unix Makefiles" /Pfad/zum/Sourchcode
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Build-System
Juhu, einer ders verstanden hatBebu hat geschrieben:Das ganze lässt sich sogar mit Codeblocks kombinieren. Ich benutze jetzt diese Zeile um das Projekt von Cmake erstellen zu lassen und jetzt werden mir alle Warnungen angezeigt, die ich brauche:
Ich hoffe nur du kannst jetzt mit den Warn-Flags die Code-Qualität etwas anhaben, das Ding hat mit Visual Studio nämlich nicht kompiliert. Das waren allerdings nicht Fälle wie "verdammtes M$VC, was willst du von mir?" sondern eher "Aha. Das macht Sinn. Warum hat mir das GCC nicht schon gesagt?"
Haters gonna hate, potatoes gonna potate.
- Bebu
- Beiträge: 562
- Registriert: Mi Okt 21, 2009 6:19 pm
- Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!
Re: Build-System
Er hätte es schon sagen können^^ Bisher hat ihm nur niemand ausgerichtet, dass er gefälligst den Mund aufmachen soll Da kann man ihm keinen Vorwurf machen. Du kennst doch den alten Programmiererwitz: Chef zum Angestellten Programmierer: "Und hast du das Problem beim Kunden gefunden?" Programmierer: "Ja, es saß genau 30 cm vor dem Bildschirm"
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!
Re: Build-System
So, ich hab jetzt einmal ein paar Warnflags hinzugefügt. In der Debugkonfiguration sind es ein paar mehr, vor allem -Weffc++. Falls das zu viel kritisiert bitte sagen Für Visual Studio gibt es auch Warnflags. Da ich es zurzeit nicht verwende wäre es super wenn wer berichten könnte wie das funktioniert.
Edit:
In Revision 201 gibt es jetzt eine neue Option zum Setzen eines Warnungs Level. Schließlich muss man nicht immer mit -Wextra und -Weffc++ kompilieren Das Warnungs Level ist übrigens unabhängig von Release oder Debug Build, da es ja damit eigentlich nichts zu tun hat.
Ich hab es aber trotzdem eingebaut Die long long Warnung habe ich aber deaktiviert...Bebu hat geschrieben:Ich habe auch den -pedantic flag weggelassen. Ich weiß auch ohne 7 Warnungen, das long long int nicht in jedem C++ Standard enthalten ist
Edit:
In Revision 201 gibt es jetzt eine neue Option zum Setzen eines Warnungs Level. Schließlich muss man nicht immer mit -Wextra und -Weffc++ kompilieren Das Warnungs Level ist übrigens unabhängig von Release oder Debug Build, da es ja damit eigentlich nichts zu tun hat.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Build-System
So. Hab gerade die neuesten Änderungen eingecheckt, das Build-System sollte jetzt einigermaßen Stabil sein.
Der SQLite finder sollte auch auf Windows ganz gut funktionieren.
Das Build-System wäre jetzt auch bereit sinnvolle Executables auch auf Windows zu produzieren, ich habe auch schon die ersten Funktionierenden Builds mit MinGW und Visual Studio 2010 erstellt.
Ganz Glatt läufts noch nicht, ein paar Probleme gibts noch zu beseitigen, aber immerhin!
Der SQLite finder sollte auch auf Windows ganz gut funktionieren.
Das Build-System wäre jetzt auch bereit sinnvolle Executables auch auf Windows zu produzieren, ich habe auch schon die ersten Funktionierenden Builds mit MinGW und Visual Studio 2010 erstellt.
Ganz Glatt läufts noch nicht, ein paar Probleme gibts noch zu beseitigen, aber immerhin!
Haters gonna hate, potatoes gonna potate.
- Bebu
- Beiträge: 562
- Registriert: Mi Okt 21, 2009 6:19 pm
- Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!
Re: Build-System
läuft die Expressversion von MSVS 2010 unter XP? Dann könnte ich es mal mit einer virtuellen Maschine versuchen.
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!