CMAKE / GCC / SSE kann nicht aktiviert werden



  • Hallo zusammen,

    ich stehe gerade etwas ratlos da. Ich habe hier ein Projekt für welches ich CDT-Projekte über CMAKE erstellen lasse.

    Der jeweiligen CMakeLists.txt habe ich schon mit ADD_DEFINITIONS(/DO3 /Dmtune=native) mitgeteilt das er optimierungen aktivieren soll. Bei meinem Athlon X2 sollte also auch SSE / SSE2 aktiviert werden.

    Im Projekt kontrolliere ich dann mit

    #ifdef __SSE__
    	#define SSE 1
    	#include <xmmintrin.h>
    #else
    	#define SSE 0
    #endif
    

    obs auch ging. Aber er aktiviert es einfach nicht. Auch über ADD_DEFINITIONS( -DO3 -Dmcpu=pentium3 -Dmsse) habe ich es versucht, ohne erfolg. Kann ich irgendwie prüfen ob die Flags beim Compiler ankommen? Oder hat jemand gleich die passende Lösung? 🙂

    Danke im Voraus!!

    MfG

    Leg



  • Was soll denn das große "D" -mtune ? Ich glaube nicht, dass das so geht.



  • Das steht in der Doku zu CMAKE das Flags welche für den Compiler gedacht sind das große D vorne stehen haben.

    http://www.cmake.org/cmake/help/cmake2.6docs.html#command:add_definitions



  • leg09 schrieb:

    Das steht in der Doku zu CMAKE das Flags welche für den Compiler gedacht sind das große D vorne stehen haben.

    Nein. Das steht da nicht. Lies es noch einmal. Da steht, dass Flags, die mit einem D beginnen automatisch als Define aufgefasst werden. Das willst du aber nicht. Du willst ein Compiler-Flag, welches kein Define ist setzten. Also warum lässt du das D nicht einfach weg?

    add_definitions(-O3 -mtune=native)
    

Anmelden zum Antworten