Problem creating custom widget on WINCE - cannot open input file 'QtDesigner.lib'
I am trying to create custom widget for WinCE 5.0 platform using Qt, for this:
I have built Qt source(4.7.1) for WinCE using STANDARDSDK_500 for ARMV4I. I used following command for configuration:
configure -platform win32-msvc2008 -xplatform wince50standard-armv4i-msvc2008 -nomake examples -nomake demos -no-qt3support -no-webkit -no-phonon -no-phonon-backend -opensource -release -no-opengl
This worked perfectly well.
After that, I could build the sample applications with VS2008 and it ran successfully on WinCE platform.
However, When I try to build the Qt custom widget in VS2008, I get following error :
LINK : fatal error LNK1181: cannot open input file 'QtDesigner.lib'
I referred : http://www.serenethinking.com/2010/08/ho…idgets-with-qt/
for creating custom widget.
I could successfully run this example on WinXP (for this I had to build Qt Creator with MingW as I had Qt installation with MingW)
I don't have such file in my Qt setup(which I have built for WinCE).
I think this file should be generated in my Qt, built for WinCE.
Is there any problem in build process, could anyone suggest what is missing ?
I think the example uses the designer lib to create the custom widget using the QUiLoader class. On WinCE you need to link with the QtUiTools.lib which has the QUiLoader class.
Thanks a lot for your prompt reply.
Can you describe how can I link 'QtUiTools.lib' and bypass "QTdesigner.lib" ?
Which example are you building? The serene thinking link didn't work for me. I think you should just open the project in VS2008 and simply change the library settings to replace QtDesigner.lib with QtUiTools.lib.
I've just looked through my build of 4.6.2 for WinCE and that has QtDesigner4.lib built for it, so it may just be a typo in the vs2008 project file and the '4' may be missing. This would be changed in the same library page in VS2008.
I am building following example:
We tried as per your suggestion and we could build the library (custom widget). When I tried to link this inside my test application targeted for WINCE I encountered following error.
D:\Qt\4.7.0-mobile\examples\wplaschg-EffectLabel-Part2-ff0f163\release\EffectLabelPlugin.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x298
Example given on above link is targeted for desktop application. Do I need to make it WINCE specific
(As I am newbie in QT, I am not sure how to proceed further)
Thanks a lot Steve,
This is solved.
I was missing 2 things.
- I was using "QTdesigner.lib" instead of "QtUiTools.lib". I changed this to 'QtUiTools.lib' from project properties.
- I was linking dll of my widget instead of that I was supposed to use .lib file. I used it. Following link is the reference for this.
Glad you sorted it out.