Help trying to compile boost 1_65_1 on Windows (Visual Studio 2017) with LZMA filter support
Hello everyone, this is my first post. Like the subject says, I need some help compiling boost 1_65_1 on Windows (Visual Studio 2017) on 64 bits with LZMA filter support. I've been compiling boost on Windows and Linux for some time without any problems, but the LZMA support in Windows, caused me some problems. I've downloaded and compiled the LZMA lib (XZ utils from https://tukaani.org/xz/), producing static (lib) and shared(dll+lib) libraries, in release and debug variants, then I have written the following user config jam (I think the problem is in the syntax of the file): ########################################## ## Using Python 3.6 (64 bits). ## using python : 3.6 : C:\\APPS\\PROGRAMMING\\Python36-64\\python.exe : C:\\APPS\\PROGRAMMING\\Python36-64\\include : C:\\APPS\\PROGRAMMING\\Python36-64\\libs : <address-model>64 ; ## Using lzma library 5.2.3. ## ## using lzma : 5.2.3 : <name>liblzma <include>C:\\APPS\\PROGRAMMING\\LIBRARIES\\lzma\\include <search>C:\\APPS\\PROGRAMMING\\LIBRARIES\\lzma\\lib64 : <variant>release <link>shared ; using lzma : 5.2.3 : <name>liblzmad <include>C:\\APPS\\PROGRAMMING\\LIBRARIES\\lzma\\include <search>C:\\APPS\\PROGRAMMING\\LIBRARIES\\lzma\\lib64 : <variant>debug <link>shared ; using lzma : 5.2.3 : <name>liblzma_static <include>C:\\APPS\\PROGRAMMING\\LIBRARIES\\lzma\\include <search>C:\\APPS\\PROGRAMMING\\LIBRARIES\\lzma\\lib64 : <variant>release <link>static ; using lzma : 5.2.3 : <name>liblzma_staticd <include>C:\\APPS\\PROGRAMMING\\LIBRARIES\\lzma\\include <search>C:\\APPS\\PROGRAMMING\\LIBRARIES\\lzma\\lib64 : <variant>debug <link>static ; ########################################## The command line for the actual compiling (after bootstrap), (omitting the path to the other libraries for shortness, those are linked\compiled without any problem) is: .\b2 -j6 --user-config=.\user-config-64.jam --build-type=complete -q -sZLIB_SOURCE="%ZLIB_ROOT%" -sBZIP2_SOURCE="%BZIP2_ROOT%" -sICU_PATH="%ICU_LIB%" toolset=msvc-14.1 link="static,shared" threading=multi ^ variant="debug,release" architecture=x86 address-model=64 runtime-link=shared stage --debug-symbols=on --debug-store=database --debug-configuration -d2 The output is: notice: found boost-build.jam at E:/DATA/TMP/boost/boost_1_65_1/boost-build.jam notice: loading Boost.Build from E:/DATA/TMP/boost/boost_1_65_1/tools/build/src notice: Searching 'C:\WINDOWS' 'C:\Users\bakaneko' 'C:\APPS\TOOLS\UNIX-HOME' 'C:\Users\bakaneko' 'E:\DATA\TMP\boost\boost_1_65_1\tools/build/src' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/kernel' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/util' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/build' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/tools' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/contrib' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/.' for site-config configuration file 'site-config.jam'. notice: Configuration file 'site-config.jam' not found in 'C:\WINDOWS' 'C:\Users\bakaneko' 'C:\APPS\TOOLS\UNIX-HOME' 'C:\Users\bakaneko' 'E:\DATA\TMP\boost\boost_1_65_1\tools/build/src' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/kernel' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/util' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/build' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/tools' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/contrib' 'E:/DATA/TMP/boost/boost_1_65_1/tools/build/src/.'. notice: Loading explicitly specified user configuration file: E:\DATA\TMP\boost\boost_1_65_1\user-config-64.jam notice: Searching 'E:\DATA\TMP\boost\boost_1_65_1' for user-config configuration file 'user-config-64.jam'. notice: Loading user-config configuration file 'user-config-64.jam' from 'E:/DATA/TMP/boost/boost_1_65_1'. notice: [python-cfg] Configuring python... notice: [python-cfg] user-specified version: "3.6" notice: [python-cfg] user-specified cmd-or-prefix: "C:\APPS\PROGRAMMING\Python36-64\python.exe" notice: [python-cfg] user-specified includes: "C:\APPS\PROGRAMMING\Python36-64\include" notice: [python-cfg] user-specified libraries: "C:\APPS\PROGRAMMING\Python36-64\libs" notice: [python-cfg] user-specified condition: "<address-model>64" notice: [python-cfg] Checking interpreter command "C:\APPS\PROGRAMMING\Python36-64\python.exe"... notice: [python-cfg] running command 'DIR /-C /A:S "C:\APPS\PROGRAMMING\Python36-64\python.exe" 2>&1' notice: [python-cfg] running command 'C:\APPS\PROGRAMMING\Python36-64\python.exe -c "from sys import *; print('version=%d.%d\nplatform=%s\nprefix=%s\nexec_prefix=%s\nexecutable=%s' % (version_info[0],version_info[1],platform,prefix,exec_prefix,executable))" 2>&1' notice: [python-cfg] ...requested configuration matched! notice: [python-cfg] Details of this Python configuration: notice: [python-cfg] interpreter command: "C:\APPS\PROGRAMMING\Python36-64\python.exe" notice: [python-cfg] include path: "C:\APPS\PROGRAMMING\Python36-64\include" notice: [python-cfg] library path: "C:\APPS\PROGRAMMING\Python36-64\libs" notice: [python-cfg] DLL search path: "C:\APPS\PROGRAMMING\Python36-64" notice: [python-cfg] Checking for NumPy... notice: [python-cfg] running command 'C:\APPS\PROGRAMMING\Python36-64\python.exe -c "import sys; sys.stderr = sys.stdout; import numpy; print(numpy.get_include())"' notice: [python-cfg] NumPy enabled notice: [lzma] Using pre-installed library notice: [lzma] Condition <link>shared <variant>release notice: [lzma] Using pre-installed library notice: [lzma] Condition <link>shared <variant>debug notice: [lzma] Using pre-installed library notice: [lzma] Condition <link>static <variant>release notice: [lzma] Using pre-installed library notice: [lzma] Condition <link>static <variant>debug notice: Searching '.' for project-config configuration file 'project-config.jam'. notice: Loading project-config configuration file 'project-config.jam' from '.'. notice: [msvc-cfg] msvc-14.0 detected, command: 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\cl.exe' notice: [msvc-cfg] msvc-11.0 detected, command: 'C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\cl.exe' notice: [msvc-cfg] msvc-14.1 detected, command: 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.11.25503\bin\HostX64\arm\cl.exe' notice: will use 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.11.25503\bin\HostX64\arm\cl.exe' for msvc, condition <toolset>msvc-14.1 'notice: [generate-setup-cmd] 14.1 is 14.1' 'notice: [generate-setup-cmd] 14.1 is 14.1' 'notice: [generate-setup-cmd] 14.1 is 14.1' 'notice: [generate-setup-cmd] 14.1 is 14.1' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>/<address-model>', setup: 'call "C:\Users\bakaneko\AppData\Local\Temp\b2_msvc_14.1_vcvars32_.cmd" >nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>/<address-model>32', setup: 'call "C:\Users\bakaneko\AppData\Local\Temp\b2_msvc_14.1_vcvars32_.cmd" >nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>x86/<address-model>', setup: 'call "C:\Users\bakaneko\AppData\Local\Temp\b2_msvc_14.1_vcvars32_.cmd" >nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>x86/<address-model>32', setup: 'call "C:\Users\bakaneko\AppData\Local\Temp\b2_msvc_14.1_vcvars32_.cmd" >nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>/<address-model>64', setup: 'call "C:\Users\bakaneko\AppData\Local\Temp\b2_msvc_14.1_vcvarsx86_amd64_.cmd"
nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>x86/<address-model>64', setup: 'call "C:\Users\bakaneko\AppData\Local\Temp\b2_msvc_14.1_vcvarsx86_amd64_.cmd" nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>ia64/<address-model>', setup: 'call "C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Auxiliary/Build/vcvarsall.bat" >nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>ia64/<address-model>64', setup: 'call "C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Auxiliary/Build/vcvarsall.bat" >nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>arm/<address-model>', setup: 'call "C:\Users\bakaneko\AppData\Local\Temp\b2_msvc_14.1_vcvarsx86_arm_.cmd" >nul ' notice: [msvc-cfg] condition: '<toolset>msvc-14.1/<architecture>arm/<address-model>32', setup: 'call "C:\Users\bakaneko\AppData\Local\Temp\b2_msvc_14.1_vcvarsx86_arm_.cmd" >nul ' notice: [zlib] Building zlib from source as boost_zlib notice: [zlib] Condition notice: [zlib] found zlib source in C:\APPS\PROGRAMMING\LIBRARIES\zlib\src_inc notice: [bzip2] Building bzip from source as boost_bzip2 notice: [bzip2] Condition notice: [bzip2] found bzip source in C:\APPS\PROGRAMMING\LIBRARIES\bzip2\src notice: [lzma] Using pre-installed library notice: [lzma] Condition Performing configuration checks
- 32-bit : yes - arm : no - mips1 : no - power : no - sparc : no - x86 : yes - symlinks supported : no - junctions supported : yes - hardlinks supported : yes - C++11 mutex : yes - Boost.Config Feature Check: cxx11_auto_declarations : yes - Boost.Config Feature Check: cxx11_constexpr : yes - Boost.Config Feature Check: cxx11_defaulted_functions : yes - Boost.Config Feature Check: cxx11_final : yes - Boost.Config Feature Check: cxx11_hdr_mutex : yes - Boost.Config Feature Check: cxx11_hdr_tuple : yes - Boost.Config Feature Check: cxx11_lambdas : yes - Boost.Config Feature Check: cxx11_noexcept : yes - Boost.Config Feature Check: cxx11_nullptr : yes - Boost.Config Feature Check: cxx11_rvalue_references : yes - Boost.Config Feature Check: cxx11_template_aliases : yes - Boost.Config Feature Check: cxx11_thread_local : yes - Boost.Config Feature Check: cxx11_variadic_templates : yes - icu (64-bit) : yes warning: Graph library does not contain MPI-based parallel components. note: to enable them, add "using mpi ;" to your user-config.jam - lzma : yes - iconv (libc) : no - iconv (separate) : no - native-atomic-int32-supported : yes - message-compiler : yes - native-syslog-supported : no - pthread-supports-robust-mutexes : no - compiler-supports-visibility : no - compiler-supports-ssse3 : yes - compiler-supports-avx2 : yes - gcc visibility : no - long double support : yes warning: skipping optional Message Passing Interface (MPI) library. note: to enable MPI support, add "using mpi ;" to user-config.jam. note: to suppress this message, pass "--without-mpi" to bjam. note: otherwise, you can safely ignore this message. - libbacktrace builds : no - addr2line builds : no - WinDbg builds : yes - WinDbgCached builds : yes - lzma : yes (cached) - lzma : yes - lzma : yes (cached) Component configuration: - atomic : building - chrono : building - container : building - context : building - coroutine : building - date_time : building - exception : building - fiber : building - filesystem : building - graph : building - graph_parallel : building - iostreams : building - locale : building - log : building - math : building - metaparse : building - mpi : building - program_options : building - python : building - random : building - regex : building - serialization : building - signals : building - stacktrace : building - system : building - test : building - thread : building - timer : building - type_erasure : building - wave : building ...patience... ...patience... ...patience... ...patience... ...patience... ...found 29592 targets... ...updating 2728 targets... ... When the compiling is done the related libraries (iostream) are: boost_iostreams-vc141-mt-1_65_1.dll boost_iostreams-vc141-mt-1_65_1.lib boost_iostreams-vc141-mt-gd-1_65_1.dll boost_iostreams-vc141-mt-gd-1_65_1.lib libboost_iostreams-vc141-mt-1_65_1.lib libboost_iostreams-vc141-mt-gd-1_65_1.lib The problem is that both, "boost_iostreams-vc141-mt-gd-1_65_1.dll" and "boost_iostreams-vc141-mt-1_65_1.dll" were linked to the debug version of the LZMA dll (libzmad.dll), and examining the log, both "libboost_iostreams-vc141-mt-gd-1_65_1.lib" and "libboost_iostreams-vc141-mt-1_65_1.lib" were statically linked to the debug version of the static LZMA library (liblzma_staticd.lib). I tried with some more combinations in the user jam file, but without success, and in most cases failing to detect LZMA. If you require any further information to help find the problem, please, let me know, I'd appreciate any help with this problem. Sorry for my English, best regards, Diego. P.S: The config log can be found here: config.log https://www.dropbox.com/s/kkut7kuka2jgi57/config.log?dl=0.
participants (1)
-
Diego Luna