Hi R-help citizens, I'm having trouble making version 0.99-6 of Matrix on FreeBSD 6.0. The error message is: * Installing *source* package 'Matrix' ... ** libs gcc -I/usr/local/lib/R/include -I/usr/local/include -D__NO_MATH_INLINES -fPIC -g -O2 -c Csparse.c -o Csparse.o ... numerous lines deleted ... gcc -I/usr/local/lib/R/include -I/usr/local/include -D__NO_MATH_INLINES -fPIC -g -O2 -c triplet_to_col.c -o triplet_to_col.o f77 -fPIC -g -O2 -c zpotf2.f -o zpotf2.o f77 -fPIC -g -O2 -c zpotrf.f -o zpotrf.o touch CHOLMOD.stamp UMFPACK.stamp COLAMD.stamp CCOLAMD.stamp AMD.stamp Metis.stamp LDL.stamp gmake[1]: Entering directory `/tmp/R.INSTALL.WMODs1/Matrix/src/CHOLMOD' ( cd Lib ; make ) make: don't know how to make w. Stop gmake[1]: *** [library] Error 2 I am running:> version_ platform i386-unknown-freebsd6.0 arch i386 os freebsd6.0 system i386, freebsd6.0 status major 2 minor 2.1 year 2005 month 12 day 20 svn rev 36812 language R> sessionInfo()R version 2.2.1, 2005-12-20, i386-unknown-freebsd6.0 attached base packages: [1] "methods" "stats" "graphics" "grDevices" "utils" "datasets" [7] "base" NB I was able to install Matrix 0.98-7 using the FreeBSD make without any problem. If I try to make version 0.99-6 using the FreeBSD make then it fails with "Missing dependency operator" errors. Does anyone have any suggestions? Thanks much, Andrew -- Andrew Robinson Department of Mathematics and Statistics Tel: +61-3-8344-9763 University of Melbourne, VIC 3010 Australia Fax: +61-3-8344-4599 Email: a.robinson at ms.unimelb.edu.au http://www.ms.unimelb.edu.au
You are mixing makes. GNU make (presumably gmake) passes on its -w argument to sub-makes, and my guess is that make is a BSD make that does not accept it. The simplest way out is to have the 'make' first in your path as GNU make whilst doing this. BTW, this really is not the appropriate place: the posting guide suggests the maintainers and then R-devel. On Wed, 11 Jan 2006, Andrew Robinson wrote:> Hi R-help citizens, > > I'm having trouble making version 0.99-6 of Matrix on FreeBSD 6.0. > The error message is: > > > * Installing *source* package 'Matrix' ... > ** libs > gcc -I/usr/local/lib/R/include -I/usr/local/include -D__NO_MATH_INLINES -fPIC -g -O2 -c Csparse.c -o Csparse.o > > ... numerous lines deleted ... > > gcc -I/usr/local/lib/R/include -I/usr/local/include -D__NO_MATH_INLINES -fPIC -g -O2 -c triplet_to_col.c -o triplet_to_col.o > f77 -fPIC -g -O2 -c zpotf2.f -o zpotf2.o > f77 -fPIC -g -O2 -c zpotrf.f -o zpotrf.o > touch CHOLMOD.stamp UMFPACK.stamp COLAMD.stamp CCOLAMD.stamp AMD.stamp Metis.stamp LDL.stamp > gmake[1]: Entering directory `/tmp/R.INSTALL.WMODs1/Matrix/src/CHOLMOD' > ( cd Lib ; make ) > make: don't know how to make w. Stop > gmake[1]: *** [library] Error 2 > > > I am running: > > >> version > _ > platform i386-unknown-freebsd6.0 > arch i386 > os freebsd6.0 > system i386, freebsd6.0 > status > major 2 > minor 2.1 > year 2005 > month 12 > day 20 > svn rev 36812 > language R > >> sessionInfo() > R version 2.2.1, 2005-12-20, i386-unknown-freebsd6.0 > > attached base packages: > [1] "methods" "stats" "graphics" "grDevices" "utils" "datasets" > [7] "base" > > > NB I was able to install Matrix 0.98-7 using the FreeBSD make without any > problem. If I try to make version 0.99-6 using the FreeBSD make then > it fails with "Missing dependency operator" errors. > > Does anyone have any suggestions? > > Thanks much, > > Andrew > -- > Andrew Robinson > Department of Mathematics and Statistics Tel: +61-3-8344-9763 > University of Melbourne, VIC 3010 Australia Fax: +61-3-8344-4599 > Email: a.robinson at ms.unimelb.edu.au http://www.ms.unimelb.edu.au > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html >-- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595
>>>>> "Andrew" == Andrew Robinson <A.Robinson at ms.unimelb.edu.au> >>>>> on Wed, 11 Jan 2006 14:12:11 +1100 writes:Andrew> Hi R-help citizens, Andrew> I'm having trouble making version 0.99-6 of Matrix on FreeBSD 6.0. Andrew> The error message is: Andrew> * Installing *source* package 'Matrix' ... Andrew> ** libs Andrew> gcc -I/usr/local/lib/R/include -I/usr/local/include -D__NO_MATH_INLINES -fPIC -g -O2 -c Csparse.c -o Csparse.o Andrew> ... numerous lines deleted ... Andrew> gcc -I/usr/local/lib/R/include -I/usr/local/include -D__NO_MATH_INLINES -fPIC -g -O2 -c triplet_to_col.c -o triplet_to_col.o Andrew> f77 -fPIC -g -O2 -c zpotf2.f -o zpotf2.o Andrew> f77 -fPIC -g -O2 -c zpotrf.f -o zpotrf.o Andrew> touch CHOLMOD.stamp UMFPACK.stamp COLAMD.stamp CCOLAMD.stamp AMD.stamp Metis.stamp LDL.stamp Andrew> gmake[1]: Entering directory `/tmp/R.INSTALL.WMODs1/Matrix/src/CHOLMOD' Andrew> ( cd Lib ; make ) Andrew> make: don't know how to make w. Stop Andrew> gmake[1]: *** [library] Error 2 Andrew> I am running: >> version Andrew> _ Andrew> platform i386-unknown-freebsd6.0 Andrew> arch i386 Andrew> os freebsd6.0 Andrew> system i386, freebsd6.0 Andrew> status Andrew> major 2 Andrew> minor 2.1 Andrew> year 2005 Andrew> month 12 Andrew> day 20 Andrew> svn rev 36812 Andrew> language R >> sessionInfo() Andrew> R version 2.2.1, 2005-12-20, i386-unknown-freebsd6.0 Andrew> attached base packages: Andrew> [1] "methods" "stats" "graphics" "grDevices" "utils" "datasets" Andrew> [7] "base" Andrew> NB I was able to install Matrix 0.98-7 using the FreeBSD make without any Andrew> problem. Yes, 0.98-7 did not have the new CHOLMOD soureces yet. Andrew> problem. If I try to make version 0.99-6 using the FreeBSD make then Andrew> it fails with "Missing dependency operator" errors. Andrew> Does anyone have any suggestions? It could be that in FreeBSD behaves differently from GNU make and there's something GNU specific in one of the various 'Makefile's... Ahh, yes, I think I have good guess: The src/CHOLMOD/Makefile has explicit calls to 'make' as in>> # Compile the C-callable libraries and the Demo programs. >> all: >> ( cd Lib ; make )but from the error message above I see you are using 'gmake' which I assume is an alias for GNU make. Of course the explicit 'make' in these Makefiles is "bad" -- We (the Matrix authors) may be excused by the fact that it is "not our code" and we tried to change as little as possible in order to facilitate updates (when new versions of the "upstream" CHOLMOD code would come about). Can you try and replace 'make' by '$(MAKE)' in the following three places, and see if it works possibly after writing (in your shell) export MAKE=gmake or setenv MAKE gmake (depending on the kind of shell you have) ? AMD/Makefile: ( cd Source ; $(MAKE) lib ) AMD/Makefile: ( cd Source ; $(MAKE) clean ) CHOLMOD/Makefile: ( cd Lib ; $(MAKE) ) CHOLMOD/Makefile: ( cd Lib ; $(MAKE) ) CHOLMOD/Makefile: ( cd Lib ; $(MAKE) purge ) CHOLMOD/Makefile: ( cd Lib ; $(MAKE) clean ) UMFPACK/Makefile: ( cd Source ; $(MAKE) lib ) UMFPACK/Makefile: ( cd Source ; $(MAKE) clean ) Regards, Martin Maechler, ETH Zurich