nkint
nkint

Reputation: 11733

use qtcreator with gnu g++4.8 in mac os x

I would like to set g++4.8 as the c++ compiler with qt creator.

I am in a OSX 10.8, QtCreator 2.8.0, and I have installed g++4.8 via homebrew.

I have setted the g++4.8 as the compiler: if I go in Projects > Manage Kits I have the GCC kit as default, and manually inserted a compiler called GCC 4.8, with compiler path /usr/local/Cellar/gcc48/4.8.1/bin/g++-4.8.

You can see it in the screenshots below. I also have /usr/local/Cellar/gcc48/4.8.1/bin in the Build Enviroment > PATH.

But, if I add QMAKE_CXXFLAGS = --version (I know it is dumb and it doesn't compile but it is just for testing) I receive in the "compiler window"

i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1

(that is the same output i receive if I launch g++ from the shell) and not

g++-4.8 (GCC) 4.8.1

(that is what i receive if I launch /usr/local/Cellar/gcc48/4.8.1/bin/g++-4.8 from the shell) (and it is what I want too)

I remember that I had this problem in the past, I tried to resolved it hardlinking the g++4.8 to /usr/bin/g++ but it was not resolved (and just messed up everything).

What can I do?

enter image description here enter image description here enter image description here enter image description here enter image description here

Upvotes: 2

Views: 2262

Answers (1)

tlonuk
tlonuk

Reputation: 395

I had the same problem and landed on your question...

Your question is how to make Qt Creator to use g++-4.8 for compilation.

The solution I devised is the following:

Solution

Add the following line somewhere in your project.pro file

QMAKE_CXX = g++-4.8

for instance just above the HEADERS list

Rationale:

The makefile synthesized by qmake uses the variable CXX to determine the C++ compiler. You can set the value of the variable CXX at the level of the project configuration file by manually editing it.

Pros:

It solves your problem, you will compile your project using g++-4.8 without having to change the g++ compiler for the rest of your environment.

Cons:

You have to manually set that for each project.

Question for Qt developers:

is there a more natural way to set the g++ compiler at the Kit level? If there is not way, that might be a useful functionality to add.

Upvotes: 2

Related Questions