Building on x64
- Dominant language
- Cython
- Stars
- 1.3k
- Forks
- 235
- PR merge metrics
- No merged PRs in 30d
Description
I'm trying to build pyql for WIN32 x64 in the following environment:
- Python 3.6.2 | packaged by conda-forge | (default, Jul 23 2017, 22:58:45) [MSC v.1900 64 bit (AMD64)] on win32
- Boost 1.71.0
- QuantLib-1.16
- MSVC Community 2017 Version 15.9.17
I followed the instructions [here](https://pyql.readthedocs.io/en/latest/getting_started.html#installation-from-source-on-windows)
but had to make a few additional tweaks:
1. add the compiler flag /D QL_HIGH_RESOLUTION_DATE when building QuantLib so that QuantLib::Hour etc. were defined
2. add the same compiler flag in setup.py get_define_macros()
3. Put a guard: **if sys.platform != 'win32':** around the compiler_so code in setup.py pyql_build_ext.build_extensions(), since this code is *nix specific (I think)
4. Install cygwin with the binutils package in order to get nm (a *nix utility for examining binary files). Put the nm location in your PATH or amend generate_symbols.py symbol_generator_from_obj_file() sp that **command = [r'
from quantlib.settings import Settings
ImportError: DLL load failed: %1 is not a valid Win32 application.
which seems to suggest some sort of 32bit vs x64 conflict, but I can't work out why. Can anyone help?
This is some output from the build stage which seems to indicate that the 64 bit compiler is being used:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -D_WIN64 -DWIN64 -DNDEBUG -D_WINDOWS -DNOMINMAX -DWINNT -D_WINDLL -D_SCL_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -DQL_HIGH_RESOLUTION_DATE -ID:\lib\QuantLib-1.16 -ID:\lib\boost_1_71_0 -I. -I./cpp_layer -IC:\Users\wxf\Continuum\anaconda3\envs\gresham_pyql\lib\site-packages\numpy\core\include -IC:\Users\wxf\Continuum\anaconda3\envs\gresham_pyql\include -IC:\Users\wxf\Continuum\anaconda3\envs\gresham_pyql\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\cppwinrt" /EHsc /Tpcpp_layer/constraint_support_code.cpp /Fobuild\temp.win-amd64-3.6\Release\cpp_layer/constraint_support_code.obj /GR /FD /Zm250 /EHsc
constraint_support_code.cpp
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.