# QMAKE: QMAKESPEC has not been set

I have recently recompiled Qt so that I can use static instead of shared libraries. But now, when I try to compile my project, I get the following error:

QMAKESPEC has not been set, so configuration cannot be deduced.

It seems like a common problem and I did do some research before posting. What's puzzling me is that I did set the QMAKESPEC env var. Here is the output of printenv QMAKESPEC

/usr/local/Trolltech/Qt-4.4.0/mkspecs/linux-g++

Also, here is the output of qmake -query QMAKESPEC

linux-g++

I have also tried playing around with the values, but it seems that qmake can't see that variable at all... QTDIR is also specified properly.

I have also tried to recompile Qt and reinstall it.

Just add this to a script before running qmake

```Unix Bourne shell:

QMAKESPEC=/usr/local/qt/mkspecs/linux-g++
PATH=\$PATH:/local/qmake/bin
export QMAKESPEC PATH

Unix C shell:

setenv QMAKESPEC /usr/local/qt/mkspecs/linux-g++
setenv PATH \$PATH:/local/qmake/bin

Microsoft Windows:

set QMAKESPEC=c:\qt\mkspecs\win32-msvc
set PATH=%PATH%;c:\qmake\bin
```

qmake is now installed.

I had the same problem and solved it by installing the libqt4-dev package.

if you are lazy to do extra set-env stuff, do here is a one liner:

```    qmake -spec c:\qt\mkspecs\win32-msvc myproject.pro
```

same goes for other platforms

From 4.8 on, qmake has a system of persistent information that can be defined using the -set option, and consulted using -query.

For more detail, consult the Configuring qmake's Environment for qmake 4.8, and Configuring qmake for qmake 5.0.

Ok, sorry, I think I know what's the problem. I have been picking up qmake from the old Qt installation that was left in /usr/bin/. I have deleted it now, and going to re-try installing Qt. Hope it will work =)