[ROOT] make install on Solaris

From: John Zweizig (jzweizig@ligo.caltech.edu)
Date: Thu May 24 2001 - 00:22:56 MEST


I just tried to install root 3.01/03 on a Solaris system with a gcc-2.95.2
compiler and, to put it bluntly, it didn't. I decided to use the 
"make --prefix=" and "make install" procedure so that I can keep a 
single copy of the cvs sources and while maintaining multiple (development
and production at least) versions of the binaries and include files.

I did the following:

1) got the source tree from cvs. Modified root/config/Makefile.solarisegcs
   so it wouldn't fail to compile (i.e. I removed -I/usr/openwin/include)

2) ./configure solarisegcs --prefix /opt/CERN/root_3.01-03
   make
   (all went well)

3) make install
   /bin/sh: syntax error at line 1: `(' unexpected
   make: *** [install] Error 2

A little investigation into this error showed that the problem is on line
368 of root/Makefile 

   inode2=`ls -id $$(pwd)/bin | awk '{ print $$1 }'`; \

the $() construct is unique to the bash shell which isn't the default
shell on Solaris. This should be replaced with a more standard construct
like \`pwd\` or $$PWD which work with either bas or traditional sh.

After fixing this, I one again tried "make install" but this resulted in 
a few hundred copies of:

  cp: illegal option -- d
  Usage: cp [-f] [-i] [-p] f1 f2
         cp [-f] [-i] [-p] f1 ... fn d1
         cp -r|R [-f] [-i] [-p] d1 ... dn-1 dn

Clearly, the -d option isn't understood by the Solaris cp command. I
modified root/config/Makfile.config to remove the -d option in the INSTALL
and INSTALLDATA macros.

Finally, "make install" worked... Now to test the compiled root...
Best regards,

John



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:46 MET