[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 14:51:18 CET 2010
Having had the chance to use my Creative Friday since a very long time,
I checked on the status of wcecompat.
Actually that breakage was introduced by a contribution I received some
time ago. Fixed it and pushed the change. As you mentioned it was about
different declaration in the headers. As for Windows Mobile it compiled
perfectly fine there seems to be some internal settings involved, thus
the fix is more like a safe way.
I have not checked on openssl yet, but at least wcecompat now compiles for:
- Windows CE 5.0 Standard SDK Mips II
- Windows CE 5.0 Standard SDK x86
- Windows Mobile 6 professional.
So, basically it should be fine for most platforms.
Best Regards,
Maurice
ext Andreas Unger wrote:
> Hello Maurice,
>
> Thanks a lot for your comments. Indeed, my intention was to compile
> wcecompat libs and then OpenSSL, and finally include the OpenSSL libs
> and headers in configure command for building Qt. However I'm failing
> at the first step (wcecompat). It might not be an path/environment
> issue since what is happening is that 'getservbyname' is defined both
> in Program Files (x86)\Windows CE
> Tools\wce500\STANDARDSDK_500\include\MIPSII\winsock2.h
> and winsock_extras.h which is the point at which the compilation fails.
>
> Anyway, I'll work on compiling wcecompat (I have no option, OpenSSL is
> critical for my application :-) ) and post the results.
>
> Cheers,
> Andreas
>
> On Fri, Jan 22, 2010 at 4:09 AM, Maurice Kalinowski
> <maurice.kalinowski at nokia.com <mailto:maurice.kalinowski at nokia.com>>
> wrote:
>
> 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
> <mailto: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 <http://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
> <mailto: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
> <mailto: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
>
> _______________________________________________
> Qt-wince-interest mailing list
> Qt-wince-interest at trolltech.com
> <mailto: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