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.75.0: Missing libraries: boost_fiber, boost_nowide, boost_fiber_numa, boost_json #4097

Closed
DominikDeak opened this issue Jan 6, 2021 · 14 comments
Labels
bug Something isn't working

Comments

@DominikDeak
Copy link

DominikDeak commented Jan 6, 2021

Seems like Conan fails to build boost/1.75.0 on macOS/Xcode 12.3 environment. I'm getting the following error:

ERROR: boost/1.75.0: Error in package_info() method, line 1331
	raise ConanException("These libraries were expected to be built, but were not built: {}".format(non_built))
	ConanException: These libraries were expected to be built, but were not built: {'boost_fiber', 'boost_nowide', 'boost_fiber_numa', 'boost_json'}

See full logs at the bottom of this issue.

This seems like a systemic problem on macOS platforms.

Related issues

Package and Environment Details

  • Package Name/Version: boost/1.75.0
  • Operating System+version: macOS Catalina 10.15.4 (19E287)
  • Compiler+version: Xcode Version 12.3 (12C33)
  • Conan version: 1.31.4
  • Python version: 2.7.16 and 3.9.1

Conan profile

[settings]
os=Macos
os_build=Macos
arch=x86_64
arch_build=x86_64
compiler=apple-clang
compiler.version=12.0
compiler.libcxx=libc++
build_type=Release
[options]
[build_requires]
[env]

Steps to reproduce

Run the command: conan install boost/1.75.0@ --build

Logs

Click to expand log
conan install boost/1.75.0@ --build

Configuration:
[settings]
arch=x86_64
arch_build=x86_64
build_type=Release
compiler=apple-clang
compiler.libcxx=libc++
compiler.version=12.0
os=Macos
os_build=Macos
[options]
[build_requires]
[env]

bzip2/1.0.8: Forced build from source
libiconv/1.16: Forced build from source
zlib/1.2.11: Forced build from source
boost/1.75.0: Forced build from source
b2/4.2.0: Forced build from source
Installing package: boost/1.75.0
Requirements
    boost/1.75.0 from 'conan-center' - Cache
    bzip2/1.0.8 from 'conan-center' - Cache
    libiconv/1.16 from 'conan-center' - Cache
    zlib/1.2.11 from 'conan-center' - Cache
Packages
    boost/1.75.0:94cf772abbc62fdba36047acf49db3d6d9235ddb - Build
    bzip2/1.0.8:75fe66fbfe61230e9fcbb361f13b6b3baa483e0a - Build
    libiconv/1.16:647afeb69d3b0a2d3d316e80b24d38c714cc6900 - Build
    zlib/1.2.11:647afeb69d3b0a2d3d316e80b24d38c714cc6900 - Build
Build requirements
    b2/4.2.0 from 'conan-center' - Cache
Build requirements packages
    b2/4.2.0:46f53f156846659bf39ad6675fa0ee8156e859fe - Build

Installing (downloading, building) binaries...
b2/4.2.0: Configuring sources in /Users/foobar/.conan/data/b2/4.2.0/_/_/source
Downloading 4.2.0.tar.gz completed [1079.83k]                                            

b2/4.2.0: Copying sources to build folder
b2/4.2.0: Building your package in /Users/foobar/.conan/data/b2/4.2.0/_/_/build/46f53f156846659bf39ad6675fa0ee8156e859fe
b2/4.2.0: Generator txt created conanbuildinfo.txt
b2/4.2.0: Calling build()

###
###
### Using 'clang' toolset.
###
###

> clang++ --version
Apple clang version 12.0.0 (clang-1200.0.32.28)
Target: x86_64-apple-darwin19.4.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

###
###



<snipped out lots of clang noise>



boost/1.75.0: Package '94cf772abbc62fdba36047acf49db3d6d9235ddb' built
boost/1.75.0: Build folder /Users/foobar/.conan/data/boost/1.75.0/_/_/build/94cf772abbc62fdba36047acf49db3d6d9235ddb
boost/1.75.0: Generated conaninfo.txt
boost/1.75.0: Generated conanbuildinfo.txt
boost/1.75.0: Generating the package
boost/1.75.0: Package folder /Users/foobar/.conan/data/boost/1.75.0/_/_/package/94cf772abbc62fdba36047acf49db3d6d9235ddb
boost/1.75.0: Calling package()
boost/1.75.0 package(): Packaged 1 '.txt' file: LICENSE_1_0.txt
boost/1.75.0 package(): Packaged 14262 '.hpp' files
boost/1.75.0 package(): Packaged 145 '.h' files
boost/1.75.0 package(): Packaged 17 files
boost/1.75.0 package(): Packaged 250 '.ipp' files
boost/1.75.0 package(): Packaged 2 '.inc' files: strict_cpp_re.inc, cpp_re.inc
boost/1.75.0 package(): Packaged 36 '.a' files
boost/1.75.0: Package '94cf772abbc62fdba36047acf49db3d6d9235ddb' created
boost/1.75.0: Created package revision 556035f835aa5aa0e5d04895caa34f2c
boost/1.75.0: WARN: Boost component 'fiber' is missing libraries. Try building boost with '-o boost:without_fiber'.
boost/1.75.0: WARN: Boost component 'fiber_numa' is missing libraries. Try building boost with '-o boost:without_fiber_numa'.
boost/1.75.0: WARN: Boost component 'json' is missing libraries. Try building boost with '-o boost:without_json'.
boost/1.75.0: WARN: Boost component 'nowide' is missing libraries. Try building boost with '-o boost:without_nowide'.
ERROR: boost/1.75.0: Error in package_info() method, line 1331
   raise ConanException("These libraries were expected to be built, but were not built: {}".format(non_built))
   ConanException: These libraries were expected to be built, but were not built: {'boost_fiber_numa', 'boost_nowide', 'boost_fiber', 'boost_json'}
@DominikDeak DominikDeak added the bug Something isn't working label Jan 6, 2021
@dmn-star
Copy link
Contributor

dmn-star commented Jan 6, 2021

run into the same issue with boost/1.74.0

ERROR: boost/1.74.0: Error in package_info() method, line 1331
raise ConanException("These libraries were expected to be built, but were not built: {}".format(non_built))
ConanException: These libraries were expected to be built, but were not built: {'boost_fiber', 'boost_nowide', 'boost_fiber_numa'}

@DominikDeak
Copy link
Author

@dmn-star I just came here to comment the exact same thing boost/1.74.0 now also fails.

ERROR: boost/1.74.0: Error in package_info() method, line 1331
	raise ConanException("These libraries were expected to be built, but were not built: {}".format(non_built))
	ConanException: These libraries were expected to be built, but were not built: {'boost_fiber_numa', 'boost_fiber', 'boost_nowide'}

The only change that I could probably blame is upgrading to Xcode 12.3 (12C33). Did you upgrade as well?

@SSE4
Copy link
Contributor

SSE4 commented Jan 6, 2021

the problematic lines are:
https://github.com/conan-io/conan-center-index/blob/master/recipes/boost/all/conanfile.py#L152
https://github.com/conan-io/conan-center-index/blob/master/recipes/boost/all/conanfile.py#L142
try removing em locally if it helps

@dmn-star
Copy link
Contributor

dmn-star commented Jan 6, 2021

@DominikDeak Yes, I use Xcode 12.3

I think the changes cause the problem #3999

@SpaceIm
Copy link
Contributor

SpaceIm commented Jan 9, 2021

Full log with build() and package() steps also
boost-package-errors-macos.log

@andioz
Copy link
Contributor

andioz commented Jan 9, 2021

I can confirm the same error on MacOS Big Sur and cross building for iOS!

@dmn-star
Copy link
Contributor

dmn-star commented Jan 9, 2021

Will probably be fixed by PR #3977, but you have to use the custom profile with compiler.cppstd=14 and build boost on your Mac to get nowide, json, numa compiled.

see #3977 (comment) and #3977 (comment)

@dmn-star
Copy link
Contributor

dmn-star commented Jan 9, 2021

@DominikDeak just try conan install boost/1.75.0@ --build -s compiler.cppstd=14

from boost recipe "apple-clang": 12
def _min_compiler_version_default_cxx11(self): # Minimum compiler version having c++ standard >= 11 return { "gcc": 6, "clang": 6, "apple-clang": 12, # guess "Visual Studio": 14, # guess }.get(str(self.settings.compiler))

@DominikDeak
Copy link
Author

@dmn-star That did the trick, cheers!

@mathbunnyru
Copy link
Contributor

@DominikDeak could you please check current master?

#3977 should have fixed the issue.

@DominikDeak
Copy link
Author

Unfortunately, the issue is still not resolved on my end (see log snippets below). The only way I can build boost is by explicitly setting -s compiler.cppstd=14 switch (as mentioned above by @dmn-star), OR disabling the affected libraries using options boost:without_fiber, boost:without_json, and boost:without_nowide. Perhaps I'm doing something wrong here?

Ran the commands:

conan remove boost --force 
conan install boost/1.75.0@ --build 

Resulted in error:

<snip>

...updated 16881 targets...
boost/1.75.0: Package '94cf772abbc62fdba36047acf49db3d6d9235ddb' built
boost/1.75.0: Build folder /Users/dom/.conan/data/boost/1.75.0/_/_/build/94cf772abbc62fdba36047acf49db3d6d9235ddb
boost/1.75.0: Generated conaninfo.txt
boost/1.75.0: Generated conanbuildinfo.txt
boost/1.75.0: Generating the package
boost/1.75.0: Package folder /Users/dom/.conan/data/boost/1.75.0/_/_/package/94cf772abbc62fdba36047acf49db3d6d9235ddb
boost/1.75.0: Calling package()
boost/1.75.0 package(): Packaged 1 '.txt' file: LICENSE_1_0.txt
boost/1.75.0 package(): Packaged 14262 '.hpp' files
boost/1.75.0 package(): Packaged 145 '.h' files
boost/1.75.0 package(): Packaged 17 files
boost/1.75.0 package(): Packaged 250 '.ipp' files
boost/1.75.0 package(): Packaged 2 '.inc' files: strict_cpp_re.inc, cpp_re.inc
boost/1.75.0 package(): Packaged 36 '.a' files
boost/1.75.0: Package '94cf772abbc62fdba36047acf49db3d6d9235ddb' created
boost/1.75.0: Created package revision 43e106e0354ca34b960fdfe08511ef55
boost/1.75.0: WARN: Boost component 'fiber' is missing libraries. Try building boost with '-o boost:without_fiber'.
boost/1.75.0: WARN: Boost component 'fiber_numa' is missing libraries. Try building boost with '-o boost:without_fiber_numa'.
boost/1.75.0: WARN: Boost component 'json' is missing libraries. Try building boost with '-o boost:without_json'.
boost/1.75.0: WARN: Boost component 'nowide' is missing libraries. Try building boost with '-o boost:without_nowide'.
ERROR: boost/1.75.0: Error in package_info() method, line 1331
	raise ConanException("These libraries were expected to be built, but were not built: {}".format(non_built))
	ConanException: These libraries were expected to be built, but were not built: {'boost_fiber', 'boost_json', 'boost_fiber_numa', 'boost_nowide'}

Additional info:

Performing configuration checks

    - default address-model    : 64-bit
    - default architecture     : x86
    - compiler supports SSE2   : yes
    - compiler supports SSE4.1 : yes
    - C++11 mutex              : no
    - lockfree boost::atomic_flag : yes
    - has stat::st_mtim        : no
    - has stat::st_mtimensec   : no
    - has stat::st_mtimespec   : yes
    - has stat::st_birthtim    : no
    - has stat::st_birthtimensec : no
    - has stat::st_birthtimespec : yes
    - has statx                : no
    - has statx syscall        : no
    - cxx11_auto_declarations  : no
    - cxx11_constexpr          : no
    - cxx11_defaulted_functions : no
    - cxx11_final              : no
    - cxx11_hdr_mutex          : no
    - cxx11_hdr_tuple          : no
    - cxx11_lambdas            : no
    - cxx11_noexcept           : no
    - cxx11_nullptr            : no
    - cxx11_rvalue_references  : no
    - cxx11_template_aliases   : no
    - cxx11_thread_local       : no
    - cxx11_variadic_templates : no
    - has_icu builds           : no
    - zlib                     : yes
    - bzip2                    : yes
    - cxx11_alignas            : no
    - cxx11_decltype           : no
    - iconv (libc)             : no
    - iconv (separate)         : yes
    - native atomic int32 supported : yes
    - native syslog supported  : yes
    - pthread supports robust mutexes : no
    - compiler supports SSSE3  : yes
    - compiler supports AVX2   : yes
    - gcc visibility           : yes
    - long double support      : yes
    - cxx11_static_assert      : no
    - std::fstream is moveable and swappable : no
    - Has Large File Support   : no
    - libbacktrace builds      : no
    - addr2line builds         : yes
    - WinDbg builds            : no
    - WinDbgCached builds      : no
    - BOOST_COMP_GNUC >= 4.3.0 : no

Component configuration:

    - atomic                   : building
    - chrono                   : building
    - container                : building
    - context                  : building
    - contract                 : building
    - coroutine                : building
    - date_time                : building
    - exception                : building
    - fiber                    : building
    - filesystem               : building
    - graph                    : building
    - graph_parallel           : not building
    - headers                  : not building
    - iostreams                : building
    - json                     : building
    - locale                   : building
    - log                      : building
    - math                     : building
    - mpi                      : not building
    - nowide                   : building
    - program_options          : building
    - python                   : not building
    - random                   : building
    - regex                    : building
    - serialization            : building
    - stacktrace               : building
    - system                   : building
    - test                     : building
    - thread                   : building
    - timer                    : building
    - type_erasure             : building
    - wave                     : building

@dmn-star
Copy link
Contributor

dmn-star commented Jan 21, 2021

Setting cppstd is the only correct way when building for macOS (for any c++ libs from Conan). I have added compiler.cppstd=14 to my default profiles. CCI uses C++03 default mode to build the libs but recent Xcode C++14.

conan-io/conan#8304
#3977 (comment)

@mathbunnyru
Copy link
Contributor

mathbunnyru commented Jan 21, 2021

Oh, I see, conan install doesn't work for me too (even with --update).
But conan createin the latest repo works fine because after the PR I mentioned was merged, some libs are not built by default on apple-clang.

That's why the default will work in these cases when the CCI artifactory gets a new revision.

@tuduongquyet
Copy link
Contributor

-s compiler.cppstd=14

I have the same issue on macOS 11.6 with XCode 13.2

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

No branches or pull requests

7 participants