[Monetdb-developers] Compilation problems MonetDB <-> Pathfinder
Hi all, after a fresh checkout and install of buildtools and MonetDB, I'm getting the following compilation error in the Pathfinder runtime module: /opt/buildtools/bin/mel -I. -I/opt/MonetDB/include/MonetDB -I/opt/MonetDB/include/MonetDB/common -I/opt/MonetDB/include/MonetDB/gdk -I/opt/MonetDB/include/MonetDB/monet -I/opt/MonetDB/include/MonetDB/plain -I/opt/MonetDB/include/MonetDB/contrib -I/opt/MonetDB/include/MonetDB/mapi -I/opt/MonetDB/include/MonetDB/C -I/usr/include/libxml2 -I../compiler/include -I./../compiler/include -proto /opt/MonetDB/include/MonetDB/plain/constant.m > /opt/MonetDB/include/MonetDB/plain/constant.proto.h /bin/sh: /opt/MonetDB/include/MonetDB/plain/constant.proto.h: Permission denied make[3]: *** [/opt/MonetDB/include/MonetDB/plain/constant.proto.h] Error 1 make[3]: Leaving directory `/home/teubner/pf/cvs-head/runtime' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/teubner/pf/cvs-head/runtime' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/teubner/pf/cvs-head' make: *** [all] Error 2 teubner@notekemper14:~/pf/cvs-head> man test It turns out that constant.m in the installation directory of MonetDB is (slightly) newer than constant.proto.h. (Touching the latter solved the problem here.) Two questions arise: (1) Why is constant.m newer than constant.proto.h anyway, given that the latter apparently depends on the former? (Note: I did *not* do any dirty tricks here, such as parallel builds or so.) (2) Why is there a dependency in the Pathfinder Makefiles that try to rebuild files outside the Pathfinder module? If I'm compiling code, I'm not expecting to pollute anything outside the respective build directories. Note that I had installed MonetDB under the superuser account and, hence, wasn't able to overwrite constant.proto.h. Otherwise, the file silently would have been overwritten. The problem certainly won't be easy to reproduce, as it depends on exact timestamps here. But there's something wrong in our build setup that allows such situations to occur at all. Jens -- Jens Teubner Technische Universitaet Muenchen, Department of Informatics D-85748 Garching, Germany Tel: +49 89 289-17259 Fax: +49 89 289-17263 Computers are like air conditioners: They stop working properly if you open windows.
Hi Jens and other, I don't have time to look/go into details but I recall similar problems --- e.g., when installing MonetDB from RPMs and then trying to build sql or pathfinder from source --- and the following bug report: http://sourceforge.net/tracker/index.php?func=detail&aid=1449491&group_id=56967&atid=482468 Stefan On Wed, Nov 08, 2006 at 01:20:47PM +0100, Jens Teubner wrote:
Hi all,
after a fresh checkout and install of buildtools and MonetDB, I'm getting the following compilation error in the Pathfinder runtime module:
/opt/buildtools/bin/mel -I. -I/opt/MonetDB/include/MonetDB -I/opt/MonetDB/include/MonetDB/common -I/opt/MonetDB/include/MonetDB/gdk -I/opt/MonetDB/include/MonetDB/monet -I/opt/MonetDB/include/MonetDB/plain -I/opt/MonetDB/include/MonetDB/contrib -I/opt/MonetDB/include/MonetDB/mapi -I/opt/MonetDB/include/MonetDB/C -I/usr/include/libxml2 -I../compiler/include -I./../compiler/include -proto /opt/MonetDB/include/MonetDB/plain/constant.m > /opt/MonetDB/include/MonetDB/plain/constant.proto.h /bin/sh: /opt/MonetDB/include/MonetDB/plain/constant.proto.h: Permission denied make[3]: *** [/opt/MonetDB/include/MonetDB/plain/constant.proto.h] Error 1 make[3]: Leaving directory `/home/teubner/pf/cvs-head/runtime' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/teubner/pf/cvs-head/runtime' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/teubner/pf/cvs-head' make: *** [all] Error 2 teubner@notekemper14:~/pf/cvs-head> man test
It turns out that constant.m in the installation directory of MonetDB is (slightly) newer than constant.proto.h. (Touching the latter solved the problem here.)
Two questions arise:
(1) Why is constant.m newer than constant.proto.h anyway, given that the latter apparently depends on the former? (Note: I did *not* do any dirty tricks here, such as parallel builds or so.)
(2) Why is there a dependency in the Pathfinder Makefiles that try to rebuild files outside the Pathfinder module? If I'm compiling code, I'm not expecting to pollute anything outside the respective build directories. Note that I had installed MonetDB under the superuser account and, hence, wasn't able to overwrite constant.proto.h. Otherwise, the file silently would have been overwritten.
The problem certainly won't be easy to reproduce, as it depends on exact timestamps here. But there's something wrong in our build setup that allows such situations to occur at all.
Jens
-- Jens Teubner Technische Universitaet Muenchen, Department of Informatics D-85748 Garching, Germany Tel: +49 89 289-17259 Fax: +49 89 289-17263
Computers are like air conditioners: They stop working properly if you open windows.
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Monetdb-developers mailing list Monetdb-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-developers
-- | Dr. Stefan Manegold | mailto:Stefan.Manegold@cwi.nl | | CWI, P.O.Box 94079 | http://www.cwi.nl/~manegold/ | | 1090 GB Amsterdam | Tel.: +31 (20) 592-4212 | | The Netherlands | Fax : +31 (20) 592-4312 |
participants (2)
-
Jens Teubner
-
Stefan Manegold