Opened 8 years ago
Closed 5 years ago
#10858 closed Bugs (fixed)
The properties are not propagated into siblings and conflict.
Reported by: | Owned by: | Vladimir Prus | |
---|---|---|---|
Milestone: | Boost 1.58.0 | Component: | build |
Version: | Boost Release Branch | Severity: | Showstopper |
Keywords: | Cc: |
Description
Since github.com/boostorg/context/commit/c5292fea24c003c3279e0f0770a93cae829e75e3 (Hey Trac! I'm not a spam!) this commit, Boost.Context depends on Boost.System/Thread, it will be shipped as 1.58.0 release.
Then, new dependency will generate following graph(partially), is expected.
Chrono -> System Thread -/ Context -^---/
Although, bbv2 generates two separated dependency graph like this.
Chrono -> System Thread -/ Thread(AA) -> System(AA) Context(AA) -^------/ AA: The target depends on address-model/architecture feature.
It means that two different (or might not different) binaries will be generated: bin.v2/.../libboost_system.so.1.58.0 and bin.v2/.../address-model-xx/architecture-yy/libboost_system.so.1.58.0.
This issue will be appeared when installing or staging boost: b2 show following error message.
error: Name clash for '<pstage/lib>libboost_system.so.1.58.0' error: error: Tried to build the target twice, with property sets having error: these incompatible properties: error: error: - <warnings>all error: - <address-model>64 <architecture>x86 <warnings>on error: error: Please make sure to have consistent requirements for these error: properties everywhere in your project, especially for install error: targets.
Tentatively workaround is specifying those features explicitly (i.e. b2 address-modell=64 architecture=x86 in the above case).
Attachments (1)
Change History (5)
by , 8 years ago
Attachment: | bug10858-testcase.tar.gz added |
---|
comment:2 by , 8 years ago
As proposed by flast, there is a workaround : b2 address-model=64 architecture=x86
comment:3 by , 8 years ago
I've added a series of pull requests to solve this.
Start at https://github.com/boostorg/boost/pull/70 for the details
comment:4 by , 5 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
This has been resolved by setting architecture/address-model globally.
Minimal reproducible testcase