Qt installation (with vs10)
-
wrote on 20 Oct 2010, 13:30 last edited by
hello,
I'd like to add Qt 4.7 to VS2010 with the Qt add in 1.1.7.
I've already installed VS2010 and Qt and the add in.
When I make a new project, the compilation ends correctly but the executable doesn't work.
The error that is displayed by Windows is : "this application could not be launched because the configuration of this application is incorrect". Reinstalling the application could solve the problem."
I didn't make any special configuration.
What did I miss during the installation/configuration process ?Thanks.
-
wrote on 20 Oct 2010, 22:09 last edited by
Sounds like some DLLs are not found. I must copy the Qt DLLs (QtCore.dll, QtGui.dll, etc.) into the directory where my compiled EXE is. Otherwise I cannot start my application.
(I'm using VS 2008)
-
wrote on 21 Oct 2010, 05:10 last edited by
okay, where can I find these dlls?
-
wrote on 21 Oct 2010, 06:37 last edited by
[quote author="jigfjifd" date="1287637858"]okay, where can I find these dlls?[/quote]
chk the bin folder under Qt
-
wrote on 21 Oct 2010, 07:34 last edited by
I've copied All the dlls (including QtGuid4.dll) of the bin folder into my executable directory, it's still not working.
The same error appears -
wrote on 21 Oct 2010, 11:36 last edited by
Then you should try the dependency walker (depends.exe) and look if all needed DLLs are found.
Unfortunately it's no more included in VS 2008 and higher, so you have to download it manually at "http://www.dependencywalker.com/":http://www.dependencywalker.com/.
-
wrote on 21 Oct 2010, 15:48 last edited by
I saw the link you provided and I'm downloading and installing the software at the moment. I'll try to find out how it works, but it seems quite complicated for my situation.
I mean, I probably am not the only one to use Qt with VS2010, am I??
My situation is quite simple and quite common, I really don't understand what's wrong and why it doesn't work... :( -
wrote on 21 Oct 2010, 15:58 last edited by
If I understand it correcly, it would seem that the executable is looking for
MSVCP90D.DLL
MSVCR90D.DLL
EFSADU.DLL
IESHIMS.DLL
WER.DLL
but doesn't find them... -
wrote on 21 Oct 2010, 15:58 last edited by
Unfortunately, developing and running software on Windows is sometimes quite complicated. Just google for DLL hell and manifest fiasco :-/
For the dependency walker:
- Put it into the same directory where your exe is
- start depends.exe
- from the file menu choose open and select your exe
There is a tree on the left side that shows you all of the DLLs that the exe needs, if you expand the entries further you can see what DLLs are needed by the DLLs themselves etc. Missing DLLs are marked and listed in the bottom lists too.
-
wrote on 21 Oct 2010, 16:03 last edited by
I have posted right before you, you probably didn't notice.
By the way, I'm not sure of these results, because when I open 'depends.exe' itself (with dependency walker) it also says that WER.DLL IESHIMS.DLL and EFSADU.DLL are missing, but this one executable works properly... -
wrote on 21 Oct 2010, 16:04 last edited by
bq. MSVCP90D.DLL
MSVCR90D.DLLIt seems that you have installed the Qt version for Visual Studio 2008. Visual Studio 2010 should need MSVCP100D.DLL and MSVCR100.DLL.
Missing IESHIMS.DLL and WER.DLL is not critical. They are not found on my system too.
I don't know about EFSADU.DLL. -
wrote on 21 Oct 2010, 16:16 last edited by
So what exactly do I need to download ?
The problem is that I don't see anything that says explicitly vs2010 on their site. -
wrote on 21 Oct 2010, 16:25 last edited by
There are no prebuilt binaries for VS 2010. You must download the source code and compile the libs yourself.
-
wrote on 21 Oct 2010, 16:43 last edited by
oh. And how do I do that ? (is there a site that explains it in detail, or could you, please?)
Is there any chance you could also tell me why this is needed ? I mean, what changes between VS2010 and 2008 that requires this ? My hardware is still the same, so why shouldn't it work?
-
wrote on 21 Oct 2010, 16:59 last edited by
You can download the sources from "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-4.7.0.zip":ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-4.7.0.zip
For the compilation and installation follow the instructions "here":http://qt.nokia.com/doc/4.7/install-win.html
For the reason why there is no prebuilt version for VS 2010: I think VS2010 is just too new. Supporting a new compiler always takes some time (setting up things, testing, and so on).
The DLLs of the two VS versions are just not compatible. It would go beyond the scope of this post to explain why, Aunt Google will tell you more ;-)
-
wrote on 22 Oct 2010, 05:35 last edited by
ok, so I downloaded the .zip and unzipped it in C:\Qt\4.7.0.
I added this path to the path environment variable.
In my situation, do I need to add other things to 'path' ? ("You may also need to ensure that the locations of your compiler and other build tools are listed in the PATH variable. This will depend on your choice of software development environment.")
I don't understand the note below this statement either.Then I opened a visual studio command prompt. 'configure' doesn't work there.
Should I write nmake right away?Thanks.
-
wrote on 22 Oct 2010, 10:42 last edited by
Normally, configure.exe (with some switches, if needed) works just fine. Did you call it via
@.\configure.exe@
or
@.\configure@There is a configure (without .exe) which happens to be a unix shell script, and that does not work on windows, of course :-)
Calling nmake without running configure.exe before will not work, as there are no makefiles to use.
-
wrote on 22 Oct 2010, 11:44 last edited by
Hello again,
I've tried everything I could think of, including
configure
configure.exe
.\configure
.\configure.exe
configuration.exe
configuration
after or before the 'cd', none of it works.
So do I need to add something else to 'path' ?
Do I have to do something related to this note : "Note: If you don't use the configured shells, which is available in the application menu, in the Open Source Versions of Qt, configure requires that sh.exe is not in the path or that it is run from msys. This also goes for mingw32-make." ?Thanks
-
wrote on 22 Oct 2010, 14:09 last edited by
If you call @configure.exe -help@ there should at least be some output on the shell, regardless of any paths etc.
-
wrote on 22 Oct 2010, 15:24 last edited by
No, there's nothing.
it says 'configure.exe' is not recognized as an internal or external command, an executable program or a file of commands.
I have to type this in the visual studio command prompt, right?
(if I type this in cmd.exe, it gives the same result).
2/37