Closed datanoise closed 12 years ago
Here is the gist with all the information: https://gist.github.com/1944640
I've experienced the same problem, details at https://gist.github.com/1945486
All the best.
Edit the formula (brew edit luarocks
) and try moving the ENV.j1 above the make line. I bet j2 would work, but we don't have a function for that at this time.
I bet it because my luarocks compiled fine and I only have two cores. However I could be wrong about the cause of the bug.
People who write Makefiles that don't work with multiple jobs are my nemesis.
Nope, it still fails: https://gist.github.com/1953678
Don't have a clue then sorry. WORKSFORME.
The error is not a build error, some temporary file is not created. Hard to diagnose.
Pushed 2.0.8 in f4e6cc4f32437cf33e009141b2834017eec7191c - does this still happen?
brew doctor
would help.
Please report this upstream as well.
For what it's worth, could not repro on my MacBook Air (failed on MacBook Pro). Looks like a dualcore vs quadcore issue. brew doctor
is clean on both.
Probably just need to move ENV.j1 above system make
then.
Apparently moving the ENV.j1 was already tested by @datanoise. But that was my suspicion as well.
I fail reading comprehension.
But more seriously, please report this issue upstream with LuaRocks.
If someone else with four cores could test the j1 attempted fix, would be good to be sure.
I need a better computer.
I was going to get a new Mac Pro but then noticed that they haven't been updated in a while, and what with Mountain Lion coming out, I wouldn't get it until then anyway.
Hm. Strange but I was able to install 2.0.8 with no problems.
I'm running running a Macbook Pro with 4 cores and 2.0.8 now seems to install for me.
I have no idea what changed, but now it compiles just fine. Intermittent failure? I had to double check my gist to see that I wasn't dreaming it up yesterday.
Moving ENV.j1 before system
commands works on my MacPro with 4 cores:
ENV.j1 # 2.0.4.1 worked in parallel but 2.0.7.1 does not
system "./configure", *args
system "make"
system "make install"
@adamv I'm going to add ENV.j2
and fix this with that. You think this is okay?
I don't trust "more than 1 but less than all" fixes; feels like 2 jobs just works "magically" if 4 fails. If you want to do it that way, go for it; I'll try to complain on their upstream mailing list either way.
Dunno if it's worth another ENV method to fix what is usually just a matter of adding a missing dependency to a make target.
Looks to me like cleanup_bins
should be declaring a dep on build_bins
, otherwise there is race and I can trigger it intermittently with make -j4
on my two-core machine.
Yes, agreed. It's not safe.
If we can fix the makefile then we rock. I'll report it upstream if the project is on GitHub, otherwise I can't be arsed.
Parallel builds re-enabled with upstream patch - 252cf63d7f95232e6b661491d476997498f77519 - can remove in next version.
Please (A) put this in a gist instead of inline and (B) include the OS information at the end of the failed install command.