[Qt-wince-interest] OpenSSL failing to build for a Qt 4.6/WinCE 5.0 target

Maurice Kalinowski maurice.kalinowski at nokia.com
Fri Jan 22 10:09:18 CET 2010


Hi,

a few comments from my side related to using OpenSSL on Windows CE and 
also in combination with Qt.
First of all, it is some time ago, that I played around with OpenSSL 
support, at least being able to compile and run our unittests with 
stable results. Never the less, OpenSSL for Qt on Windows CE is not an 
official supported feature.

In addition, the OpenSSL version at that point in time was a rather old 
one, and latest versions will probably not compile on Windows CE.

1. You should not use wcecompat to compile Qt for Windows CE. Qt uses 
its own wrappers internally for missing standard functionality, and the 
include paths will clash with the wcecompat versions. Hence the compile 
errors people have mentioned on this list.
2. As Nikolay pointed out, setcepaths is designed for compiling Qt for 
Windows CE. There might be paths missing in your environment and you 
need to adapt those manually (Eg. including the wcecompat include path 
into your environment).
3. I am not sure, if I tried wcecompat on the mips platform, but 
definitely did not for msvc2008. In worst case things have changed in 
the meantime causing wcecompat to have compilation issues.

I cannot comment on the non-compiling wcecompat now (as that is too long 
away), but at least in case you got wcecompat and openssl compiling, you 
need to do the following things to get Qt compiling successfully.

As mentioned, you need to have the OpenSSL headers and libraries in your 
environment variables available (meaning INCLUDE and LIB). configure.exe 
checks if it can find the correct files in the environment, otherwise 
disables the OpenSSL functionality again. Do _not_ have wcecompat in 
your setting due to reasons mentioned above.

To summarize, you need wcecompat in your environment to be able to build 
OpenSSL, and you need OpenSSL to compile Qt, but exclude wcecompat at 
that point. I suggest using different command prompts for different 
actions ("title" command is very helpful in case you have too many 
command prompts open).

Hope to have been of at least some help. If some of you have bugfixes or 
enhancements to wcecompat, feel free to send merge requests via github. 
But unfortunately I am not actively developing on this project anymore, 
so I hope that someone else might want to continue maintaining this library.

Best Regards,

Maurice Kalinowski


ext Nikolay Mikheev wrote:
> 2010/1/20 Andreas Unger <andi.unger05 at gmail.com>
>   
>> I should first build wcecompat libs before building OpenSSL, right? I'm unable to build just wcecompat by itself. As a Linux user, I'm not very familiar with WinCE. See my attempts at building wcecompat below. What is the sequence of steps that I should follow?
>> I first start with these commands:
>> cd C:\Qt\mauricek-wcecompat
>> set OSVERSION=WCE500
>> set PLATFORM=STANDARDSDK
>> set TARGETCPU=MIPSII
>> set PATH=%PATH%;C:\Qt\qt-4.6.0-MIPS-CE-5.0\bin
>> Attempt 1:
>> ----------
>> 1) C:\Qt\qt-4.6.0-MIPS-CE-5.0\bin\setcepaths wince50standard-mipsii-msvc2008
>> output:
>> Environment Selection:STANDARDSDK_500 (MIPSII)
>> Standard SDK for mips-ii selected, environment is set up
>> 2) perl config.pl
>> output:
>> windows ce version:WCE500
>> major:5
>> minor:00
>> Compiling for Architecture:MIPSII
>> Compile: -D_WIN32_WCE=0x500 -DUNDER_CE=500 -DMIPS -D_MIPS_ -DMIPS_R4000
>> Link:/SUBSYSTEM:windowsce,5.00 /MACHINE:MIPS
>> 3) nmake
>> include\winsock_extras.h(33) : error C2220: warning treated as error - no 'objec
>> t' file generated
>> include\winsock_extras.h(33) : warning C4273: 'getservbyname' : inconsistent dll
>>  linkage
>>         C:\Program Files (x86)\Windows CE Tools\wce500\STANDARDSDK_500\include\M
>> IPSII\winsock2.h(2183) : see previous definition of 'getservbyname'
>> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\
>> VC\ce\bin\x86_mips\cl.EXE"' : return code '0x2'
>> Stop.
>> Attempt 2:
>> ------------
>> 1) C:\Qt\qt-4.6.0-MIPS-CE-5.0\bin\setcepaths wince50standard-mipsii-msvc2008
>> 2) C:\Qt\qt-4.6.0-MIPS-CE-5.0\bin\qmake
>> WARNING: Failure to find: src\io.cpp
>> WARNING: Failure to find: src\process.cp
>> WARNING: Failure to find: src\time.cpp
>> WARNING: Failure to find: src\io.cpp
>> WARNING: Failure to find: src\process.cp
>> WARNING: Failure to find: src\time.cpp
>>     
>
> When i tried to build it, setcepaths was not working correctly for
> building wcecompat, because it was written for building Qt, not for
> any other software. I wrote own bat-file with INCLUDE, LIBS and other
> paths manually.
> Also, i'm not so advanced in WinCE, because i'm linux user too.
> Maybe, you should ask mauricek directly how to build it for MIPSII.
>
> --
> Best regards, Nikolay Mikheev
>
> _______________________________________________
> Qt-wince-interest mailing list
> Qt-wince-interest at trolltech.com
> http://lists.trolltech.com/mailman/listinfo/qt-wince-interest
>   


-- 
Maurice Kalinowski
Nokia, Qt Development Frameworks
Rudower Chaussee 13, 12489 Berlin, Germany
Email  : maurice.kalinowski at nokia.com
Phone  : (+49) 30 6392 3255
Fax    : (+49) 30 6392 3256
http://qt.nokia.com/

Nokia gate5 GmbH
Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany
Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B
Umsatzsteueridentifikationsnummer: DE 812 845 193
Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori




More information about the Qt-wince-interest mailing list