[PyQt] pyqtdeploy: Unable to compile openssl in Windows when attempting to build sysroot

Neil Jansen neil.jansen at rockwellcollins.com
Wed Feb 7 18:07:59 GMT 2018


'nvm fixed it', lol.

Seems to work OK if I manually edit the openssl.py in
Python35\Lib\site-packages\pyqtdeploy\sysroot\plugins\openssl.py to include
'no-asm' in the common_options.

Which leads me to another question that should hopefully be a little easier
to answer.  Exactly what does the openssl dependency actually get used in?
How much slower would my final application be if I'm purposely skipping the
assembly optimizations?  An answer on stackoverflow seems to indicate 2-4x
slower performance when crunching openssl algorithms, but exactly how much
of Qt5, PyQt5, python stdlib modules, and/or common third-party modules
(requests et.al.) actually utilizes openssl?  Sorry if this is a dumb
question but seems important, as it's the difference between this being a
valid workaround, and it being a hack that will be detrimental in the long
run.






On Wed, Feb 7, 2018 at 10:56 AM, Neil Jansen <
neil.jansen at rockwellcollins.com> wrote:

> Apologies if this has been posted before.  I'm usually very
> self-sufficient with these sort of things, but I'm positively stuck at this
> point, and Google hasn't turned up much.
>
> I'm trying to get the demo pyqtdeploy project working, but I'm stuck on
> the step where it's trying to compile openssl as a part of building
> sysroot.  The instructions / tutorials are VERY vague and leave a lot of
> interpretation up to the reader.  I'm not even 100% sure I'm using the
> right versions as there is no documentation on which dependency version(s)
> have been confirmed to work together.  I've posted a few snippets of the
> build window below.  I've struggled to get even this far, but now that it's
> to the point of failing with syntax errors in assembly language, I'm
> bailing out and need help at this point.
>
> Can anyone tell me if this is an easy fix?
>
> Build machine:
> ------------------
> OS: Windows 7 Enterprise 64-bit
> Architecture: Intel Core i7-4790
> Memory: 16 GB
>
> Build tools:
> ----------------
> Python version: Python 3.5.1
> Perl version: ActivePerl 5.6.1 Build 631
> Compiler suite: VS2015 x64, via 'VisualCppBuildTools_Full.exe' as obtained
> from http://landinghub.visualstudio.com/visual-cpp-build-tools
> pyqtdeploy version: 2.1 from pypi, per the instructions on this page:
> https://www.riverbankcomputing.com/software/pyqtdeploy/download
>
> Dependencies:
> ---------------------
> pyqt5 source version: PyQt5_gpl-5.10.tar.gz
> openssl source version: openssl-1.0.2n.tar.gz, which I downloaded from the
> official site.
>
>
> --------------------------
>         cl /Fotmp32\fips_ers.obj  -Iinc32 -Itmp32 /MT /Ox
> -DOPENSSL_THREADS  -DDSO_W
> IN32 -W3 -Gs0 -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN
> -DL_ENDIAN -
> DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE -DOPENSSL_IA32_SSE2
> -DOPENSSL_BN_ASM_
> MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM
> -DSHA256_ASM
> -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM
> -DGHASH_ASM
>  -DECP_NISTZ256_ASM -DOPENSSL_NO_IDEA -DOPENSSL_NO_RC5 -DOPENSSL_NO_MD2
> -DOPENSSL_NO
> _MDC2 -DOPENSSL_NO_SSL2 -DOPENSSL_NO_SSL3 -DOPENSSL_NO_KRB5
> -DOPENSSL_NO_JPAKE -DOPE
> NSSL_NO_WEAK_SSL_CIPHERS -DOPENSSL_NO_DYNAMIC_ENGINE /Zl /Zi /Fdtmp32/lib
> -c .\crypt
> o\fips_ers.c
> fips_ers.c
>         set ASM=ml64 /c /Cp /Cx /Zi
>         perl crypto\x86_64cpuid.pl tmp32\x86_64cpuid.asm
>         ml64 /c /Cp /Cx /Zi /Fotmp32\x86_64cpuid.obj tmp32\x86_64cpuid.asm
> Microsoft (R) Macro Assembler (x64) Version 14.00.24210.0
> Copyright (C) Microsoft Corporation.  All rights reserved.
>
>  Assembling: tmp32\x86_64cpuid.asm
> tmp32\x86_64cpuid.asm(43) : error A2009:syntax error in expression
> tmp32\x86_64cpuid.asm(44) : error A2009:syntax error in expression
> tmp32\x86_64cpuid.asm(190) : error A2009:syntax error in expression
> tmp32\x86_64cpuid.asm(191) : error A2009:syntax error in expression
> NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> Studio 14.0\VC\
> BIN\amd64\ml64.EXE"' : return code '0x1'
> Stop.
> Traceback (most recent call last):
>   File "c:\python35\lib\runpy.py", line 170, in _run_module_as_main
>     "__main__", mod_spec)
>   File "c:\python35\lib\runpy.py", line 85, in _run_code
>     exec(code, run_globals)
>   File "C:\Python35\Scripts\pyqtdeploy-sysroot.exe\__main__.py", line 9,
> in <module>
>
>   File "c:\python35\lib\site-packages\pyqtdeploy\pyqtdeploysysroot_main.py",
> line 83
> , in main
>     sysroot.build_components(args.component, args.no_clean)
>   File "c:\python35\lib\site-packages\pyqtdeploy\sysroot\sysroot.py",
> line 103, in b
> uild_components
>     component.build(self)
>   File "c:\python35\lib\site-packages\pyqtdeploy\sysroot\plugins\openssl.py",
> line 9
> 6, in build
>     self._build_win(sysroot, common_options)
>   File "c:\python35\lib\site-packages\pyqtdeploy\sysroot\plugins\openssl.py",
> line 2
> 27, in _build_win
>     sysroot.run(sysroot.host_make, '-f', 'ms\\nt.mak')
>   File "c:\python35\lib\site-packages\pyqtdeploy\sysroot\sysroot.py",
> line 562, in r
> un
>     subprocess.check_call(args)
>   File "c:\python35\lib\subprocess.py", line 584, in check_call
>     raise CalledProcessError(retcode, cmd)
> subprocess.CalledProcessError: Command '('nmake', '-f', 'ms\\nt.mak')'
> returned non-
> zero exit status 2
>
>
> Any help would be greatly appreciated.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20180207/2512562a/attachment.html>


More information about the PyQt mailing list