PDA

View Full Version : Build static QT + static SSL problem.



makzimi
4th February 2011, 13:50
Hello.
I'm trying to built static Qt with static SSL. I need exactly static.
This topic Compiling static for Windows with OpenSSL (http://www.qtcentre.org/threads/28417-Compiling-static-for-Windows-with-OpenSSL) don't help me.

My platform: Windows XP sp2, QT 4.4.3, MSVS 2003
What have i done:

1. SSL sources from OpenSSL (http://www.openssl.org) (openssl-1.0.0c) i build staticly.


> perl Configure VC-WIN32 no-asm --prefix=c:\mydir\ssl
> ms\do_ms
> nmake -f ms\nt.mak
> nmake -f ms\nt.mak install


After that i have ssl libs "libeay32.lib" and "ssleay32.lib" in my c:\mydir\ssl\lib. Everything is ok.

2. Rebuild my QT.


> configure -static -platform win32-msvc2003 -openssl-linked -I "c:\mydir\ssl\include" -L "c:\mydir\ssl\lib"
> nmake


So, nmake print me this:



c:\mydir\qt-4.4.3\src\network\ssl\qsslsocket_openssl_symbols_p .h(264) : error C2065: 'STACK' : undeclared identifier
c:\mydir\qt-4.4.3\src\network\ssl\qsslsocket_openssl_symbols_p .h(264) : error C2065: 'a' : undeclared identifier
c:\mydir\qt-4.4.3\src\network\ssl\qsslsocket_openssl_symbols_p .h(264) : error C2182: 'q_sk_free' : illegal use of type 'void'
c:\mydir\qt-4.4.3\src\network\ssl\qsslsocket_openssl_symbols_p .h(264) : fatal error C1903: unable to recover from previous error(s); stopping com
pilation
...
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio .NET 2003\VC7\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.


It seems like nmake cannot find ssl sources... But i'm sure this sources is in c:\mydir\ssl\include.

I have no idea, what i'm doing wrong.
Can anybody help me about this? Thanks.

aamer4yu
5th February 2011, 08:22
Before starting step 2, Copy OpenSsl(staticly built) directories(include, bin and lib) to Qt include include/bin/lib folders.
I usually follow the above step while building Qt myself.

makzimi
7th February 2011, 10:15
I tried, It doesnt help...(

But i find an interesting thing. nmake print:

c:\mydir\qt-4.4.3\src\network\ssl\qsslsocket_openssl_symbols_p .h(264) : error C2065: 'STACK' : undeclared identifier.
STACK - is type that was in old versions OpenSSL. I used openssl-1.0.0c and there is _STACK type instead STACK!!!
Ok, then i took openssl-0.9.8p version. Tried to build again. Files compiled ok, but linker print an error. problem with libeay32.lib...

well, i'll try to rebuilt all...

dk
24th April 2012, 00:45
I have the same problem ... how did you solve it?