Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[package] boost/1.74: assertion failures break Boost #3899

Closed
gummif opened this issue Dec 15, 2020 · 5 comments · Fixed by #3872
Closed

[package] boost/1.74: assertion failures break Boost #3899

gummif opened this issue Dec 15, 2020 · 5 comments · Fixed by #3872
Labels
bug Something isn't working

Comments

@gummif
Copy link
Contributor

gummif commented Dec 15, 2020

This worked up until we noticed a CI failure yesterday.

Package and Environment Details (include every applicable attribute)

  • Package Name/Version: boost/1.74
  • Operating System+version: Linux Ubuntu 16.04
  • Compiler+version: GCC 9
  • Conan version: conan 1.32.0
  • Python version: Python 3.5.2

Conan profile (output of conan profile show default or conan profile show <profile> if custom profile is in use)

[settings]
os=Linux
os_build=Linux
arch=x86_64
arch_build=x86_64
compiler=gcc
compiler.version=9
compiler.libcxx=libstdc++11
build_type=Release
[options]
[build_requires]
[env]

Steps to reproduce (Include if Applicable)

Built using conan cmake:

conan_cmake_run(CONANFILE external/conanfile.txt
                BASIC_SETUP CMAKE_TARGETS
                SETTINGS compiler.cppstd=17
                INSTALL_FOLDER ${CMAKE_SOURCE_DIR}/external/build
                BUILD outdated)

with options

boost:shared=False
boost:asio_no_deprecated=True
boost:system_no_deprecated=True
boost:without_system=False    # only system
boost:without_atomic=True
boost:without_chrono=True
boost:without_container=True
boost:without_context=True
boost:without_contract=True
boost:without_coroutine=True
boost:without_date_time=True
boost:without_exception=True
boost:without_fiber=True
boost:without_filesystem=True
boost:without_graph_parallel=True
boost:without_graph=True
boost:without_iostreams=True
boost:without_locale=True
boost:without_log=True
boost:without_math=True
boost:without_mpi=True
#boost:without_nowide=True  # note: commented out since this option is not supported for some reason
boost:without_program_options=True
boost:without_python=True
boost:without_random=True
boost:without_regex=True
boost:without_serialization=True
boost:without_stacktrace=True
boost:without_test=True
boost:without_thread=True
boost:without_timer=True
boost:without_type_erasure=True
boost:without_wave=True

Logs (Include/Attach if Applicable)

Click to expand log
boost/1.74.0: Applying build-requirement: b2/4.2.0
Downloading conan_sources.tgz
boost/1.74.0: Configuring sources in /cache/conan/.conan/data/boost/1.74.0/_/_/source
boost/1.74.0: Building your package in /cache/conan/.conan/data/boost/1.74.0/_/_/build/9b7ecc6f57ed8cf8a11455d8439778eaae415a93
boost/1.74.0: Generator txt created conanbuildinfo.txt
boost/1.74.0: Calling build()
notice: found boost-build.jam at /cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/boost-build.jam
notice: loading B2 from /cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src
warning: mismatched versions of B2 engine and core
warning: B2 engine (b2) is 4.2.0
warning: B2 core (at /cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src) is 4.3-git
notice: Searching '/etc' '/root' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src' '/cache/conan/.conan/data/b2/4.2.0/_/_/package/4db1be536558d833e52e862fd84d64d75c2b3656/bin/b2_src/src/kernel' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/kernel' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/util' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/build' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/tools' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/contrib' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/.' for site-config configuration file 'site-config.jam'.
notice: Configuration file 'site-config.jam' not found in '/etc' '/root' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src' '/cache/conan/.conan/data/b2/4.2.0/_/_/package/4db1be536558d833e52e862fd84d64d75c2b3656/bin/b2_src/src/kernel' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/kernel' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/util' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/build' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/tools' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/contrib' '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/src/.'.
notice: Loading explicitly specified user configuration file:
    /cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/user-config.jam
notice: Searching '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build' for user-config configuration file 'user-config.jam'.
notice: Loading user-config configuration file 'user-config.jam' from '/cache/conan/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build'.
notice: will use '/usr/bin/clang++' for clang-linux, condition <toolset>clang-linux-10.0.1
notice: iostreams: not using zlib compression 
notice: iostreams: not using bzip compression 
notice: iostreams: not using lzma compression 
notice: iostreams: not using zstd compression 
Performing configuration checks
    - default address-model    : 64-bit
    - default architecture     : x86
    - Boost.Config Feature Check: cxx11_defaulted_functions : yes
    - Boost.Config Feature Check: cxx11_noexcept : yes
    - Boost.Config Feature Check: cxx11_rvalue_references : yes
    - Boost.Config Feature Check: cxx11_static_assert : yes
    - std::fstream is moveable and swappable : yes
    - Has Large File Support   : yes
Component configuration:
    - atomic                   : not building
    - chrono                   : not building
    - container                : not building
    - context                  : not building
    - contract                 : not building
    - coroutine                : not building
    - date_time                : not building
    - exception                : not building
    - fiber                    : not building
    - filesystem               : not building
    - graph                    : not building
    - graph_parallel           : not building
    - headers                  : building
    - iostreams                : not building
    - locale                   : not building
    - log                      : not building
    - math                     : not building
    - mpi                      : not building
    - nowide                   : building
    - program_options          : not building
    - python                   : not building
    - random                   : not building
    - regex                    : not building
    - serialization            : not building
    - stacktrace               : not building
    - system                   : building
    - test                     : not building
    - thread                   : not building
    - timer                    : not building
    - type_erasure             : not building
    - wave                     : not building

...

boost/1.74.0: WARN: b2 target-os=linux architecture=x86 address-model=64 binary-format=elf abi=sysv --layout=system --user-config=/home/xxx/.conan/data/boost/1.74.0/_/_/source/source_subfolder/tools/build/user-config.jam -sNO_ZLIB=1 -sNO_BZIP2=1 -sNO_LZMA=1 -sNO_ZSTD=1 boost.locale.iconv=on boost.locale.icu=offthreading=multi link=static variant=release --without-atomic --without-chrono --without-container --without-context --without-contract --without-coroutine --without-date_time --without-exception --without-fiber --without-filesystem --without-graph --without-graph_parallel --without-iostreams --without-locale --without-log --without-math --without-mpi --without-program_options --without-python --without-random --without-regex --without-serialization --without-stacktrace --without-test --without-thread --without-timer --without-type_erasure --without-wave toolset=gcc cxxflags=-std=c++17 define=_GLIBCXX_USE_CXX11_ABI=1 define=BOOST_SYSTEM_NO_DEPRECATED=1 define=BOOST_ASIO_NO_DEPRECATED=1 pch=on cxxflags="-fPIC -g" install --prefix=/home/xxx/.conan/data/boost/1.74.0/_/_/package/ff83e3acceb03a788201254c6233b0618ae690f0 -j8 --abbreviate-paths --debug-configuration --build-dir="/home/xxx/.conan/data/boost/1.74.0/_/_/build/ff83e3acceb03a788201254c6233b0618ae690f0"

ERROR: boost/1.74.0: Error in package_info() method, line 1164
        assert len(non_used) == 0, "These libraries were not used in conan components: {}".format(non_used)
        AssertionError: These libraries were not used in conan components: {'boost_nowide'}
CMake Error at cmake/conan.cmake:402 (message):
  Conan install failed='1'
Call Stack (most recent call first):
  cmake/conan.cmake:497 (conan_cmake_install)
  CMakeLists.txt:44 (conan_cmake_run)

@gummif gummif added the bug Something isn't working label Dec 15, 2020
@madebr
Copy link
Contributor

madebr commented Dec 15, 2020

In #3872, the configuration of boost is switched from --without-xxx to --with-xxx.
Can you try it?
It should not build nowide. 🤞

#3894 adds the nowide option.
I can add it in #3872, but I don't want to steal @fpelliccioni 's pull request.

@gummif
Copy link
Contributor Author

gummif commented Dec 15, 2020

Ok thanks, lets hope these get merged soon.

@fpelliccioni
Copy link
Contributor

In #3872, the configuration of boost is switched from --without-xxx to --with-xxx.
Can you try it?
It should not build nowide. 🤞

#3894 adds the nowide option.
I can add it in #3872, but I don't want to steal @fpelliccioni 's pull request.

I am facing some issues running the rebuild-dependencies.py script, so I think it is better that you steal it.

@gummif
Copy link
Contributor Author

gummif commented Dec 17, 2020

I managed to pin the revision to an older version by setting env var CONAN_REVISIONS_ENABLED=1 and using boost/1.74.0#3b52fbf45879b8b288e59d454d1c4765, if someone has the same issue.

@madebr madebr mentioned this issue Dec 19, 2020
4 tasks
@BotelhoVinicius
Copy link

I managed to pin the revision to an older version by setting env var CONAN_REVISIONS_ENABLED=1 and using boost/1.74.0#3b52fbf45879b8b288e59d454d1c4765, if someone has the same issue.

@gummif There's any way to pin all index revision to not affect the actual state of build of conan for futures changes? This affected our Jenkins build and non-cached builds, we want to prevent it...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants