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

Compilation error on 4.02.3 on Mac OSX #116

Open
dannywillems opened this issue Nov 9, 2016 · 7 comments
Open

Compilation error on 4.02.3 on Mac OSX #116

dannywillems opened this issue Nov 9, 2016 · 7 comments

Comments

@dannywillems
Copy link
Member

I didn't investigate. See https://travis-ci.org/ocsigen/ocsigen-start/jobs/174512894.

@vasilisp
Copy link
Contributor

vasilisp commented Nov 9, 2016

Does ln -s -f work on Mac OS X?

@dannywillems
Copy link
Member Author

@vasilisp I think so.

@dannywillems
Copy link
Member Author

I close. I can't reproduce.

@vasilisp
Copy link
Contributor

@dannywillems, re-opening because I wouldn't like that to happen to users, during opam-repository CI jobs, etc.

Looks like a race condition in our Makefile. I find these two continuous lines from the Travis log suspicious:

# ln -s -f ../ocsipersist.mli .
# ln -s -f ../ocsipersist.mli .

Speculation: different make threads try to make the link at the same time, and the link is created between the check implied by -f and the actual action?

No idea what to do!

@vasilisp vasilisp reopened this Nov 14, 2016
@vasilisp
Copy link
Contributor

We could remove the -j%{jobs}%, I think the trouble started around the time we added it. It shouldn't be too big of a deal. OPAM will still do adequate parallelization (different packages in parallel), it will just be coarser-grained.

@dannywillems
Copy link
Member Author

dannywillems commented Nov 15, 2016

@vasilisp with GNU ln, ln -sf doesn't exit with error when the file exists. I will try for BSD ln.

EDIT: It's also working on BSD. No idea for the moment.

@vasilisp
Copy link
Contributor

vasilisp commented Nov 15, 2016

@dannywillems I know about GNU, that's why I added the -f. Judging by the manual, it should be the same for OS X, and that's exactly what makes the file exists error hard to understand :).

Anyway, it is about parallel builds, and I have disabled them, so don't worry too much :).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants