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

boost: build stuck on OS X 10.11.4 #133

Closed
tdsmith opened this issue Apr 7, 2016 · 13 comments
Closed

boost: build stuck on OS X 10.11.4 #133

tdsmith opened this issue Apr 7, 2016 · 13 comments
Labels
bug Reproducible Homebrew/homebrew-core bug

Comments

@tdsmith
Copy link
Contributor

tdsmith commented Apr 7, 2016

From @mdelmans on April 7, 2016 14:19

Installation of boost with

brew install boost --c++11

hangs at

...updated 13743 targets...

been like this for ~12 hours.

Copied from original issue: Homebrew/brew#43

@tdsmith
Copy link
Contributor Author

tdsmith commented Apr 7, 2016

From @MikeMcQuaid on April 7, 2016 14:24

Sorry but you have not followed the requested steps on the Troubleshooting page: https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Troubleshooting.md#troubleshooting

Please follow (all of) these steps and post the information here so we can help you with your problem.

Thanks!

@tdsmith tdsmith added the bug Reproducible Homebrew/homebrew-core bug label Apr 7, 2016
@tdsmith
Copy link
Contributor Author

tdsmith commented Apr 7, 2016

From @mdelmans on April 7, 2016 15:10

Sorry I did't follow the protocol.

I ranbrew update (twice)
I fixed all warnings (apart from unbowed headers I believe are from node.js)
My command line tools are up to date (OS is to the latest update as well)

Still stuck at

...updated 13743 targets...

Gist logs:
https://gist.github.com/3f391e758d751c78ecc62fbef9f99033

@tdsmith
Copy link
Contributor Author

tdsmith commented Apr 7, 2016

From @UniqMartin on April 7, 2016 19:6

This seems to be a legitimate bug. I'm able to reproduce it locally, though I haven't isolated the problem yet. Stay tuned …

@tdsmith
Copy link
Contributor Author

tdsmith commented Apr 7, 2016

We get reports about this on IRC occasionally. I've never been able to reproduce; I think it might be hardware-linked? I don't have a problem on a 16gb MacBookPro11,5.

CPU: 8-core 64-bit haswell
OS X: 10.11.4-x86_64
Xcode: 7.3
CLT: 7.3.0.0.1.1457485338
Clang: 7.3 build 703
...
🍺  /usr/local/Cellar/boost/1.60.0_1: 11,139 files, 437.7M, built in 12 minutes 19 seconds

@tdsmith
Copy link
Contributor Author

tdsmith commented Apr 7, 2016

Incidentally --c++11 is a no-op on ≥ 10.9; you can almost certainly work around this by not passing any options and just using the bottle.

Removing the bug label since this is not obviously a Homebrew bug.

@tdsmith tdsmith removed the bug Reproducible Homebrew/homebrew-core bug label Apr 7, 2016
@UniqMartin
Copy link
Contributor

It's a legitimate bug, I reproduced it locally, and am preparing a fix right now. It's triggered by boost but isn't immediately related to that formula (other formulae are probably also affected).

@UniqMartin UniqMartin added the bug Reproducible Homebrew/homebrew-core bug label Apr 7, 2016
@apjanke
Copy link
Contributor

apjanke commented Apr 7, 2016

Do you know where the hang happens? Is it right toward the end of installation before "Cleaning" and "Finishing up" should happen? Seems like it might be, since "...updated 13743 targets..." sounds like a status message output at the end of a make pass

I was just working on a hang in install under brew test-bot that seems possibly related to env :userpaths, and boost is one of the few other formulae to use that.

(Could confirm similarity by doing a ps when it's hung and seeing if there's a wrapped git --version call sitting there taking up CPU time.)

@tdsmith
Copy link
Contributor Author

tdsmith commented Apr 7, 2016

Incidentally, this is why boost has env :userpaths: Homebrew/legacy-homebrew#15689

I think that may no longer be necessary.

@DomT4
Copy link
Member

DomT4 commented Apr 7, 2016

I'm not convinced nginx needs it anymore either.

I presume it was added because nginx used to pluck the first passenger-config out of the $PATH if building with that option but for a fair while now it has been chained to the passenger formula instead via an option.

@UniqMartin
Copy link
Contributor

A tentative fix is to be found in Homebrew/brew#46. Sorry I completely missed basically the same issue (and thorough analysis of it) that had already happened in #88.

UniqMartin added a commit to UniqMartin/brew that referenced this issue Apr 7, 2016
Using `git` from `Formula#install` can cause an exec bomb if used in a
formula with `env :userpaths` because that causes both `Library/ENV/4.3`
and `Library/ENV/scm` to be in PATH, both of which contain a `git`
binary that is the same SCM wrapper. Those will mutually exec each other
indefinitely as they fail to detect that they are the same wrapper.

Extend the exec-bomb protection to check the paths after all symbolic
links have been expanded to prevent this situation.

Fixes Homebrew#43.
Fixes Homebrew/homebrew-core#133.
@apjanke
Copy link
Contributor

apjanke commented Apr 7, 2016

Sorry I completely missed basically the same issue (and thorough analysis of it) that had already happened in #88.

No worries: no reason you should have known about it, unless you had been exhaustively watching all the comments on the core repo and made the connection. That wasn't even posted as an issue, just some trouble in a formula bump PR. I just saw the connection because you happened to mention the hang issue while I had been working on the other one.

I was about to post it as a new Issue to homebrew/brew, which is when you would have seen it, but you already had a fix out before I finished writing up the bug report.

@UniqMartin
Copy link
Contributor

@mdelmans Try again after a brew update. This should have been fixed by Homebrew/brew@d7aa0c0.

@mdelmans
Copy link

mdelmans commented Apr 8, 2016

Thanks guys. Works like a charm.

@Homebrew Homebrew locked and limited conversation to collaborators May 4, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Reproducible Homebrew/homebrew-core bug
Projects
None yet
Development

No branches or pull requests

5 participants