0 Qt moc ab Boost 1.48

Versucht man in einem Qt Projekt eine aktuelle Boost Version einzubinden, wird man schnell feststellen, dass der Qt moc-Compiler nicht durch die Header von Boost kommt.

.../boost/mpl/if.hpp(131): Warning: Macro argument mismatch.
.../boost/mpl/eval_if.hpp(67): Warning: Macro argument mismatch.
.../boost/mpl/void.hpp(71): Warning: Macro argument mismatch.
.../boost/mpl/begin_end.hpp(52): Warning: Macro argument mismatch.
.../boost/mpl/negate.hpp(52): Warning: Macro argument mismatch.
...
*snip*
...NMAKE : fatal error U1077: 'C:\Qt\5.2.0\msvc2012\bin\moc.exe' : return code '0xc0000005'
Stop.

Der moc-Compiler aus Qt 5.2 erzeugt statt Fehler nur noch Warnings, werden davon genug erzeugt, bricht das Tool trotzdem mit einem Fehler ab.

Es bleibt zur Zeit nur der Workaround, die Boost-Includes vor dem Moc-Compiler zu verstecken.

Beispiel:


#ifndef Q_MOC_RUN
#  include <boost/serialization.h>
#endif

Will man ein bestehendes Qt-Projekt auf eine neue Boost Version heben, ist es natürlich sehr mühselig den Include-Guard überall im Code einzufügen.
Mit den RegExp-Ersetzen von Sublime Text kann dies mit folgenden Ausdrücken automatisiert werden.

 Find: ((\n#include <boost/[^\n]+)+)
 Replace: \n#ifndef Q_MOC_RUN\1\n#endif

Wir haben in unserem Branch von QxORM bei Github die notwendigen Anpassungen bereits umgesetzt.

kommentieren→

0 Puma für Ruby unter Windows installieren

Damit Rails-Disco korrekt funktioniert, benötigt man einen Multithreadfähigen Server wie zum Beispiel Puma.
Das Installieren von Puma benötigt die OpenSSL Header. Diese Anleitung erklärt, wie ich es unter Windows installiert habe.

weiterlesen→

0 Rails Disco - The party starts now

Gestern haben wir Rails Disco — unser auf Rails basiertes CQRS-Framework — in Version 0.1.0 auf Github veröffentlicht. Es implementiert die Grundzüge von CQRS und einfachem Event Sourcing und bietet so die Möglichkeit die Vorzüge dieser beiden Ideen auch mit Ruby on Rails zu verwenden.

weiterlesen→

0 Sqlite für Ruby 2.0.0 unter Windows

Mit der neuesten Version von Ruby ist der Sqlite3 Support aus dem RubyInstaller entfallen. Um weiterhin einfach neue Rails Anwendungen testen zu können, ist es daher notwendig Sqlite3 für MinGW zu erstellen und das Gem zu installieren.

weiterlesen→

14 Event Kalender Dresden

Vorstellung des von HicknHack gepflegten Event Kalenders mit allen wichtigen Terminen der UserGroups in Dresden und weiteren wichtigen Veranstaltungen.

weiterlesen→

© 2012 – 2018 HicknHack Software GmbH | Impressum | Datenschutzerklärung