Karim BELABAS on Thu, 18 Apr 2002 14:55:36 +0200 (MEST) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: GP Makefile compiling twice |
On Wed, 17 Apr 2002, Michael Somos wrote: > I am using the latest CVS and following the recommended instructions > for making the gp software. However, I notice that it seems to be > compiling the source twice. In summary, I do './Configure' ,'make gp', > and 'make install'. > > Here is an edited version of the script : > > danube:/tmp/local/pari> ./Configure --prefix=/u/home/somos/u/pari > Configuring pari-2.2.3 (DEVELOPMENT VERSION) > > [...] > > ========================================================================== > Extracting examples/Makefile.solaris-sparcv9 > Extracting Osolaris-sparcv9/Makefile > Extracting Makefile > Extracting Osolaris-sparcv9/paricfg.h > Extracting Osolaris-sparcv9/../Odos/paricfg.h > Extracting scripts and macros > ...in doc > ...in emacs > ...in misc > ========================================================================== > Shall we try to build pari 2.2.3 (development) now (y/n)? [n] > Ok. Type "make install" when you are ready > Bye ! > danube:/tmp/local/pari> make gp > cd Osolaris-sparcv9; make gp > make[1]: Entering directory `/tmp/local/pari/Osolaris-sparcv9' > cat ../src/kernel/sparcv8/level0.h ../src/kernel/none/level1.h > pariinl.h > > [...] > > /usr/local/bin/gcc -c -O3 -DGCC_INLINE -Wall -Wno-implicit -fomit-frame-pointer > -I. -I../src/ > headers -I../src/graph -o plotport.o ../src/graph/plotport.c > /usr/ccs/bin/as -P -I. -D__GNUC__ -T -o kernel.o ../src/kernel/sparcv8/level0_sp > arcv8_micro.S > /usr/local/bin/gcc -c -O3 -DGCC_INLINE -Wall -Wno-implicit -fomit-frame-pointer > -I. -I../src/ > headers -o mp.o ../src/kernel/none/mp.c > > [...] > > rm -f ../gp > ln -s Osolaris-sparcv9/gp-dyn ../gp > make[1]: Leaving directory `/tmp/local/pari/Osolaris-sparcv9' > danube:/tmp/local/pari> make install > cd Osolaris-sparcv9; make install > make[1]: Entering directory `/tmp/local/pari/Osolaris-sparcv9' > /usr/local/bin/gcc -c -O3 -DGCC_INLINE -Wall -Wno-implicit -fomit-frame-pointer > -I. -I../src/ > headers -o mp.o ../src/kernel/none/mp.c > > [...] > > Notice that all modules from 'mp.c' on seem to be compiled twice. > Any idea if this is a feature? Shalom, Michael It is not a feature, and I believe the Makefile is correct. Apparently, your OS attaches incorrect timestamps to the some object files, and 'make' believes that a header file has been modified since GP was last compiled. I've seen this happen on specific machines, often in conjunction with messages of the form: gmake: *** Warning: File `../src/basemath/alglin1.c' has modification time in the future but could not solve it. I don't know whether to blame 'make' or the system clock. In practice, on my afflicted Linux box (i686, 2.4.7-10, RH 7.2, gmake-3.79.1), it happens rarely, and only once if at all [ i.e further 'make' behave as expected ]. I once had access to an ancient alpha (under OSF), where this annoying behaviour was systematic: invoking make at any time resulted in full recompilation (in this case, I believe the culprit was 'make'). Karim. -- Karim Belabas Tel: (+33) (0)1 69 15 57 48 Dép. de Mathematiques, Bat. 425 Fax: (+33) (0)1 69 15 60 19 Université Paris-Sud Email: Karim.Belabas@math.u-psud.fr F-91405 Orsay (France) http://www.math.u-psud.fr/~belabas -- PARI/GP Home Page: http://www.parigp-home.de/