Problem in debugging qt program
-
[quote author="SGaist" date="1376077649"]I might be wrong, but I think that using a MSVC2010 Qt with VS2008 might be problematic[/quote]
That is for sure too. You cannot mix different msvc versions. -
[quote author="koahnig" date="1376077876"]
I have never tried, but I would guess that the same rules apply when use nmake directly. Give it a try.
AFAIK there is no way around the VS command prompt. [/quote]You can if you setup the environment by hand, it can even work from an msys prompt (i.e. installed with git for windows) but that's not for the faint hearted.
IIRC, there are several batch files you can use to setup a command prompt. They can be found in the VS install, or the quick way is to check the properties of the various command prompt shortcut in the Start menu
-
[quote author="SGaist" date="1376078503"]
[quote author="koahnig" date="1376077876"]
I have never tried, but I would guess that the same rules apply when use nmake directly. Give it a try.
AFAIK there is no way around the VS command prompt. [/quote]You can if you setup the environment by hand, it can even work from an msys prompt (i.e. installed with git for windows) but that's not for the faint hearted.
IIRC, there are several batch files you can use to setup a command prompt. They can be found in the VS install, or the quick way is to check the properties of the various command prompt shortcut in the Start menu[/quote]
Well, I was never digging as deep. I was doing a couple of compilations of Qt 4 versions. All I know is that one had to use msvc command prompt. That was the officially recommended way to do the compilation based on msvc for quite some time. However, that might have changed over the time.
However, the problem or an additional problem is probably the mix of different msvc versions. The libs of msvc were always dependent of the compiler versions.
Since msvc2008 is used and no pre-build of msvc2008 is on the official page, that is for sure the next thing to check.
-
[quote author="koahnig" date="1376082086"]
Well, I was never digging as deep. I was doing a couple of compilations of Qt 4 versions. All I know is that one had to use msvc command prompt. That was the officially recommended way to do the compilation based on msvc for quite some time. However, that might have changed over the time. [/quote]IFAIK, it hasn't changed a bit, I did that to automate release builds and I like bash better.
[quote author="koahnig" date="1376082086"]
However, the problem or an additional problem is probably the mix of different msvc versions. The libs of msvc were always dependent of the compiler versions.Since msvc2008 is used and no pre-build of msvc2008 is on the official page, that is for sure the next thing to check. [/quote]
Completely agree
-
Thank you very much for your help
I will try to solve the problem with your solution on Monday at work and then if I still have this problem, we can try to find another solution.
As your information, I tried the later versions of visual studio but the result was same. I prefer to use MSVC 2008 because it is in English and others are in german. anyway, thanks again for your help.
-
[quote author="Amirhosein" date="1376086468"]Thank you very much for your help
I will try to solve the problem with your solution on Monday at work and then if I still have this problem, we can try to find another solution.
As your information, I tried the later versions of visual studio but the result was same. I prefer to use MSVC 2008 because it is in English and others are in german. anyway, thanks again for your help.[/quote]
The open question at the time is whether you have installed the correct Qt lib version. The version has to be compiled with the same MSVC version as you are trying to do your application.
Which version of Qt are you using?
Is it Qt5 or Qt4?
Where did you download from? -
I use Qt v4,8,4 (VS2010 Opensource). I don't know from where it is downloaded.
when I call nmake in command prompt, it gives me same fatal error for both of MSVC that I have. Maybe my MSVCs have a problem.
These are the errors:
C:\Program Files\Microsoft Visual Studio 9.0\VC>nmake
Microsoft (R) Program Maintenance Utility Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.NMAKE : fatal error U1064: MAKEFILE not found and no target specified
Stop.C:\Program Files\Microsoft Visual Studio 10.0\VC>nmake
Microsoft (R) Program Maintenance Utility, Version 10.00.30319.01
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.NMAKE : fatal error U1064: MAKEFILE nicht gefunden und kein Ziel angegeben
Stop. -
You have both Visual Studio 2008 and 2010 installed ?
-
yes I have the both.
-
If you want to use Qt libs 4.8.4 (VS2010 Opensource) you must use the compiler tool chain shipped with msvc2010 for compilation.
"According to this":http://de.wikipedia.org/wiki/Microsoft_Visual_Studio#Version_2010 it would be the second one you have tried.
[quote author="Amirhosein" date="1376313350"]
C:\Program Files\Microsoft Visual Studio 10.0\VC>nmakeMicrosoft (R) Program Maintenance Utility, Version 10.00.30319.01
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.NMAKE : fatal error U1064: MAKEFILE nicht gefunden und kein Ziel angegeben
Stop.
[/quote]
This seems to be correct nmake, but the makefile is missing.Do you use msvc2010 as IDE (integrated development environment) or Qt creator?
I got the feeling that you are working on command prompt only. Is that true?
Anyway a qmake run is missing. This would create the missing makefile.
-
I don't have Qt creator, so I only use command prompt.
so you think that my Qt has a problem?
-
No, what koahnig said is that you probably didn't run qmake, so you don't don't have a Makefile because of that.
To build your project (and I recommend a shadow build)
make a shadow build folder besides your source folder
cd into that folder
call qmake ..\mycoolprogram\mycoolprogram.pro
call nmake
-
of course I built my project with qmake, but I got an error that I posted before,
I think I should try the new versions of Qt which has also Qt creator but does Qt5,1 that released recently work with MSVC 2010 or I should also install the later version of VC? -
What do you have in the folder where you ran qmake ?
-
Hello.cpp
Hello.pro
Makefile
Makefile.debug
Makefile.release
release and debug folder which are emoty. -
[quote author="Amirhosein" date="1376316291"]of course I built my project with qmake, but I got an error that I posted before,
I think I should try the new versions of Qt which has also Qt creator but does Qt5,1 that released recently work with MSVC 2010 or I should also install the later version of VC?[/quote]
Sorry, for criss-crossing with SGaist. Certainly, he is correct that you should be able to do all from command prompt. If you think that is the better way, that is fine.However, I think using an IDE helps to get all required steps in the right order.
If you have a fully licensed MSVC2010 version (not the express version which is for free), you can install vsaddin or maybe you have that should take care of calling qmake and nmake in the right sequence.
An alternative is using Qt creator and your "only" choice when you have only an msvc express version.
You do not have to switch to Qt 5 for using Qt creator. You install from the download page the Qt5 SDK which includes Qt creator. This will allow you also to continue to use Qt4.8.4 libs as already installed. However, you "waste" a bit of HD space, but have already Qt5 too.
Alternatively, you can install "Qt creator":http://download.qt-project.org/official_releases/qtcreator/2.8/2.8.0/qt-creator-windows-opensource-2.8.0.exe separately from download page. -
I have Visual Studio professional and also Qt4 visual studio Add-in. But when I write Qt program in visual studio It gives me this error:"C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6006: "cmd.exe" wurde mit dem Code 1 beendet." which means: "cmd.exe exited with code 1"
I searched for the solution for this error but I couldn't find any useful solution, I think it has a problem with Qmake. -
Do you have no problems with a simple hello world program without Qt?
Make sure that msvc is properly setup. When this is the case, I would recommend to install Qt libs and the newest vsaddin freshly.
-
I frequently write programs with MSVC and I don't have any problem but when I want to write Qt program, I have the problem.
I wanted to try another solutions than installing other versions because I need several permissions to install a program on my pc, but I will try to install the new versions of Qt and MSVC.
anyway, thanks for your help. :-)