Problems when using Qt4.8.2 in WinCE6.0 (Intel i486 CPU)
-
Hi guys,
I'm rookie in Embedded System with Qt.
Recently, I've been trying to integrate Qt with WinCE6.0 (Intel i486 CPU). There is no problem in building Qt libs. But the generated Qt project just did not work.
My work flow follows:
- new a QtWinCE Project in visual studio 2008 using Qt Add-in;
- directly build the project;
- Copy the generated .exe to flash disk and plugin in the flash disk to the WinCE panel.
Finally, when running the program, these is no response (no GUI or bug report).
Later, I also copy the QtGui4.lib and QtCore4.lib to the same directory and have another try, still no response.
By the way, when compiling Qt, I use "configure -platform win32-msvc2008 -xplatform wince60Beckhoff_HMI_600-x86-msvc2008" and I new a folder in mkspecs/ directory named wince60Beckhoff_HMI_600-x86-msvc2008. Also change the SDK to Beckhoff_HMI_600 in qmake.conf.
Any idea about how to solve this problem ? Thanks a lot!
-
I just had the joy of doing this for an Eaton WinCE 5.0 panel with a custom SDK a couple days ago, so I feel your pain.
Couple of points:
After running configure.exe, did you use checksdk to set your environment variables instead of setcepaths? You have to do this for custom SDKs. See my "post":http://qt-project.org/forums/viewthread/40940/ from a couple days ago for tips.
Have you tried deploying the project directly from Visual Studio? If you're debugging your device over ActiveSync or TCP/IP, hitting debug in VS should automatically copy over all the required DLLs and the EXE to your device, and also let you debug remotely so you can maybe see where things are going sideways.
I assume you're using "this":http://qt-project.org/doc/qt-4.8/windowsce-customization.html as a guide? Take a look at the last point about disabling stuff with QFeature.
-
...
-
I feel very sorry.
The problems are solved.
It turns out that I was very careless.
Anyway, to configure Qt in WinCE6.0 environment, the procedure is actually very easy. To sum up:
- in vs2008 command prompt, enter $(QTDIR) (mine is E:/Qt/4.8.5/)
"configure --platform win32-msvc2008 --xplatform wince60YourSDK-(architect of CPU)-(developing environment)"
mine is
"configure -platform win32-msvc2008 -xplatform wince60MMC2-x86-msvc2008"
with custom WinCE SDK, you should first new a folder named "wince60YourSDK-(architect of CPU)-(developing environment)", i.e. the string after "-xplatform"
2.enter $(QTDIR)/bin directory
use the "checksdk.exe" to set your wince path.
First, use the "checksdk -list" to see what kind of sdk you've installed. Then, use the "checksdk -sdk (name of the sdk you'll use)" (checksdk -sdk "MMC2 (x86)" for me) to set the wince include/lib/bin path. And finally, "nmake" to build all the Qt/WinCE libs.
3.install Qt-addin
4.New Qt/WinCE project in visual studio 2008
When executing Qt Program in WinCE6.0, maybe you'll need the msvcr90.dll.(Use the depends tool to find out.) If needed, remember to get this dll from the visual studio installation path, mine is "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\dll\x86 (for x86 architect)".
If your developing platform is visual studio 2005, use the msvcr80.dll and likewise.