Question

I am using OpenMP in my Visual Studio projects and currently thinking very seriously in changing to QT creator. (Doesn't Visual Studio suck?,I expect much more from Microsoft)

But anyway... Does QT creator support OpenMP? In case of that, what should I do to enable it? Or maybe is enabled by default? Do I need to do something special?

Thanks for your advices. Ignacio.

Was it helpful?

Solution

Does QT creator support OpenMP?

As someone else mentioned, it's not Qt itself that support OpenMP but the compiler.

What should I do to enable it?

If you have installed a recent Qt 4.6.x SDK (hint: latest QtCreator 1.3 is included), it comes with MinGW 4.4 which has OpenMP support built-in.

Do I need to do something special?

Edit your project .pro file and add the following lines to pass the OpenMP flags to the compiler :

QMAKE_CXXFLAGS += -fopenmp
LIBS += -fopenmp

Enjoy!

OTHER TIPS

Qt itself has no own C++ compiler, instead it uses existing, for example on Windows platform it is mingw. Officially migw supports OpenMP since 4.2.0

In addition to esavard's answer, I found that I needed to add:

LIBS += -fopenmp

for the program to link properly. I'm running QT creator 2.0.1 with QT 4.7.0 on Ubuntu 10.10 (64 bit). Hope this helps anyone else running into the "undefined reference to 'GOMP_parallel_start'" type errors.

add two line for both compile and link QMAKE_CXXFLAGS += -fopenmp QMAKE_LFLAGS += -fopenmp

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top