Opened 12 years ago
Closed 12 years ago
#38327 closed defect (worksforme)
mdbtools @0.7 should not be built in parallel
Reported by: | cooljeanius (Eric Gallager) | Owned by: | anddam (Andrea D'Amore) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.3 |
Keywords: | Cc: | anddam (Andrea D'Amore) | |
Port: | mdbtools |
Description
So I was recently trying to install mdbtools, and got the following error:
lexer.l:22:10: fatal error: 'parser.h' file not found updating parser.h #include "parser.h" ^ 1 error generated. CC parser.lo make[2]: *** [lexer.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_mdbtools/mdbtools/work/mdbtools-0.7/src/sql' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_mdbtools/mdbtools/work/mdbtools-0.7/src' make: *** [all-recursive] Error 1 make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_mdbtools/mdbtools/work/mdbtools-0.7' Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_mdbtools/mdbtools/work/mdbtools-0.7" && /usr/bin/make -j4 -w all Exit code: 2 Error: org.macports.build for port mdbtools returned: command execution failed
I tried building again immediately after that and it built perfectly fine. What I'm assuming happened was that one make job that required "parser.h" got reached before the make job that actually created "parser.h" got reached. Then, the second time around, the file was already there from the first time around. To work around this issue, I suggest that mdbtools use use_parallel_build no
in its portfile.
Change History (8)
comment:1 Changed 12 years ago by cooljeanius (Eric Gallager)
comment:2 Changed 12 years ago by mf2k (Frank Schima)
Cc: | and.damore@… added; mdbtools removed |
---|---|
Port: | mdbtools added; and.damore@macports.org removed |
comment:3 Changed 12 years ago by anddam (Andrea D'Amore)
Owner: | changed from macports-tickets@… to and.damore@… |
---|---|
Status: | new → assigned |
comment:4 Changed 12 years ago by anddam (Andrea D'Amore)
I cannot reproduce, I can build fine with any number of build jobs. Please run:
port clean mdbtools port build mdbtools build.jobs=1
and confirm it builds correctly, use sudo if needed.
Then run
port clean mdbtools port build mdbtools build.jobs=4
and confirm the build breaks.
comment:5 follow-up: 6 Changed 12 years ago by jmroot (Joshua Root)
A race condition by definition won't cause a 100% reproducible problem.
comment:6 follow-up: 7 Changed 12 years ago by anddam (Andrea D'Amore)
Replying to jmr@…:
A race condition by definition won't cause a 100% reproducible problem.
I understand that but I think that a clean and rebuild is the minimum test that has to be performed on the user side.
comment:7 Changed 12 years ago by cooljeanius (Eric Gallager)
Replying to and.damore@…:
Replying to jmr@…:
Replying to and.damore@...:
I cannot reproduce, I can build fine with any number of build jobs. Please run:
port clean mdbtools port build mdbtools build.jobs=1and confirm it builds correctly, use
sudo
if needed.Then run
port clean mdbtools port build mdbtools build.jobs=4and confirm the build breaks.
A race condition by definition won't cause a 100% reproducible problem.
I understand that but I think that a clean and rebuild is the minimum test that has to be performed on the user side.
Hm, that's strange, I can't reproduce it now anymore, either... I wonder what went wrong the first time?
comment:8 Changed 12 years ago by anddam (Andrea D'Amore)
Resolution: | → worksforme |
---|---|
Status: | assigned → closed |
Idk but as rule of thumb a clean&build is appropriate on an error. I'm closing the ticket as worksforme but, if some other user reports issues using multiple jobs I'll disable parallel build.
darn it I just realized I got my cc and port fields mixed up...