Skip to content

depends: fix Boost 1.55 build on GCC 5#6280

Merged
laanwj merged 1 commit intobitcoin:masterfrom
welshjf:boost-cxx11
Jun 17, 2015
Merged

depends: fix Boost 1.55 build on GCC 5#6280
laanwj merged 1 commit intobitcoin:masterfrom
welshjf:boost-cxx11

Conversation

@welshjf
Copy link
Contributor

@welshjf welshjf commented Jun 13, 2015

Boost assumes variadic templates are always available in GCC 4.4+, but they aren't since we don't build with -std=c++11.

This applies the patch that fixed the issue in boost 1.57: boostorg/config@eec8085

See also: https://svn.boost.org/trac/boost/ticket/10500

(Or we could just bump the Boost version... I dunno how risky that is, so this is the conservative fix.)

Boost assumes variadic templates are always available in GCC 4.4+, but
they aren't since we don't build with -std=c++11.

This applies the patch that fixed the issue in boost 1.57:
boostorg/config@eec8085

See also: https://svn.boost.org/trac/boost/ticket/10500
@luke-jr
Copy link
Member

luke-jr commented Jun 15, 2015

NACK, we shouldn't be patching dependencies here since we need to support building with system dependencies too. Doesn't gitian already succeed? That's all that should use depends/ ...

@laanwj
Copy link
Member

laanwj commented Jun 15, 2015

At least for 0.12/master I think we should boost the boost version instead of piling up more local patches.

For backporting this seems fine to me.

@laanwj
Copy link
Member

laanwj commented Jun 15, 2015

@luke-jr the depends system does not only exist for gitian, it's also there for doing cross-compilation, or building when the necessary dependencies don't exist for the distro. Unfortunately it doesn't contain a gcc version, so it has to work with user's gcc which comes from a wider version range than just that used by gitian.

@welshjf
Copy link
Contributor Author

welshjf commented Jun 15, 2015

To be clear, this isn't a failure to build Bitcoin with system dependencies, it's a failure to build Boost. My own need was for working on the depends build itself (namely bumping Qt) without going through the whole gitian setup. I didn't see this as the common case which is why I didn't base against 0.11. The gitian environment will be affected too if it's ever updated. Feel free to close if bumping Boost is the preferred way to go; I just wanted to make the problem and one solution known.

@theuni
Copy link
Member

theuni commented Jun 15, 2015

Agreed with bumping boost. There were problems with some versions after 1.55, but iirc 1.58 is relatively solid and a good candidate for us.

@laanwj
Copy link
Member

laanwj commented Jun 16, 2015

@theuni Also bump boost for releases? We could use this as a more minimal patch on 0.11 branch before the next rc.

@theuni
Copy link
Member

theuni commented Jun 17, 2015

@laanwj I meant for master. This looks good for 0.11, I think it's a bit late for such a big bump there.

@laanwj
Copy link
Member

laanwj commented Jun 17, 2015

OK. Going ahead and merging this then, we can remove the patch again when the bump happens.

@laanwj laanwj merged commit b19a88b into bitcoin:master Jun 17, 2015
laanwj added a commit that referenced this pull request Jun 17, 2015
b19a88b depends: fix Boost 1.55 build on GCC 5 (Jacob Welsh)
laanwj pushed a commit that referenced this pull request Jun 17, 2015
Boost assumes variadic templates are always available in GCC 4.4+, but
they aren't since we don't build with -std=c++11.

This applies the patch that fixed the issue in boost 1.57:
boostorg/config@eec8085

See also: https://svn.boost.org/trac/boost/ticket/10500

Github-Pull: #6280
Rebased-From: b19a88b
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Sep 8, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants