Re: (re)compiling from source




Chris

This explanation assumes a BDI install where the EMC stuff resides in 
/usr/local/emc and the rcslib resides in /usr/local/rcslib.    If your 
file system is different you will need to do this from a directory other 
than local.  Forgive me if this reads like something for a newbe.  

What I do when I want to setup a new system based on an older one is;

1 - Run packupsrc on the runnable old system. 

A - Copy the file /usr/local/emc/scripts/generic/packupsrc to the 
/usr/local  directory.

B - Edit the /usr/local/emc/scripts/generic/emcsrc.inc file.  Add any 
extra files or directories that you want moved.  If you also have a 
/usr/local/emc/scripts/linux_2_2_18 directory edit the same file there.

C - Issue the command /usr/local/packupsrc and after a bit and perhaps a 
sed complaint or two you will get a new tarball named emc-1.12-5.src.tgz 
The numerical portion of the filename will reflect the date you ran it.

D - If you need floppy sized files you can run this command.
split -b 1400k   emc-1.12-5.src.tgz   emc-1.12-5.src.a
Change the filenames to reflect the correct date.

2 - Move the tarball to the new location.

A - I recommend creating a sub-directory of /usr/local.  Normally I name 
this directory after the date of the revision.  A version for today might 
be /usr/local/NIST1231 which gives me a year before I have to replace it 
or be confused. 

B - Copy the tarball from packupsrc to the new directory.  If you have 
made floppy sized files you will need to cat them together using the 
command cat {each file name to be included}  > emc-1.12-5.src.tgz.  If the 
files start scrolling across the terminal, you forgot the > in the middle.

C - Untar the file using the tar command.
tar -xzvf emc-1.12-5.src.tgz

D - At this point you can edit the source files that you want to change or 
you can compile first to make certain that you have reproduced a runnable 
system.

E - Install the new EMC ./install.  Make certain that you are in the new 
directory.  NIST1231 in this example.

F - As you make changes to the source code in the emc or rcslib stuff you 
can run ./install again.  There are some built in accelerators that ignore 
the source files that do not need to be recompiled.

I also do this same process for my copy of the sourceforge repository 
except that I copy my entire repository to a temp directory before I run 
the packupsrc.   That way my copy from sourceforge remains pristine.

Ray


On Monday 31 December 2001 08:51 am, you wrote:
> I tried all excellent tips including these from Ray and Paul below, but
> I get the error '-' csh unknown option after the ./buildrcs** command.
> It seems that the compile scripts and makefiles only want to run from
> the original position.
> When I use the copied usr/local/compile I get the extraneous text
> after** error messages.
> When I use compile within original setting from BDI (in usr/local) it
> works fine, but that doesn't help because the altered files are not on
> the BDI source.
> Any good advice?




Date Index | Thread Index | Back to archive index | Back to Mailing List Page

Problems or questions? Contact