[Coin-discuss] SYMPHONY migration
Ted Ralphs
tkralphs at lehigh.edu
Sat Feb 19 01:12:23 EST 2005
Folks,
As you know by now, some directories have been relocated in the CVS
repository of SYMPHONY. This means that doing a CVS update in the
COIN/SYMPHONY directory will return errors, as the requested directories
will no longer exist on the server. Along with the reorganization of
directories, there have also been changes in the build environment. The
goal of all of this is to make the SYMPHONY Project's directory
structure more logical and easier to navigate, as well as to make the
root directory a little less crowded and the build environment more
transparent.
SYMPHONY *should* build correctly in all architectures after migrating
according to these instructions, as the Makefiles, READMEs, and Windows
build files have all been updated for the new directory structure.
However, it is inevitable that we missed a few changes and that some
paths have not been updated properly, so please let us know if you have
trouble building SYMPHONY in a particular configuration or environment.
Migrating in Unix/Linux/CYGWIN
==============================
There are two approaches to migrating to the new directory structure:
1. The safest and perhaps easiest approach is to simply move aside the
old COIN/SYMPHONY directory, and check out a fresh copy in a temporary
directory. Assuming COIN is located in $HOME/COIN, do the following.
mv $HOME/COIN/SYMPHONY $HOME/COIN/SYMPHONY.tmp
mkdir $HOME/COIN.tmp
cd $HOME/COIN.tmp
cvs -d \
:pserver:anonymous at www.coin-or.org:2401/home/coin/coincvs \
checkout SYMPHONY
mv COIN/SYMPHONY $HOME/COIN/
cd ..
rm -r COIN.tmp
cd COIN/SYMPHONY
Now move any locally modified or created files from $HOME/SYMPHONY.tmp
to $HOME/SYMPHONY and remove $HOME/COIN/SYMPHONY.tmp.
Warning: You should not overwrite the Makefiles in the new SYMPHONY
directory. Make the local modifications to these by hand. Otherwise,
SYMPHONY may no longer compile correctly.
2. A second approach is to use the attached "migrate" script. Running it
in the SYMPHONY root directory will modify your local copy of the
repository, so that you can continue working with it and updating it,
while retaining all local modifications. It has been tested and used to
migrate several local copies of the repository under Linux and CYGWIN
already, but please use at your own risk and make a backup of your
SYMPHONY directory before running the script if there are important
files contained therein.
Assuming COIN is installed in $HOME/COIN, save the "migrate" script in
$HOME/COIN/SYMPHONY. Before running the script, you should delete the
empty CVS directories SYMPHONY/MPP/Common and SYMPHONY/Template/Common
if you have them, as indicated below. These empty directories will not
be moved by the script and may cause errors when updating after the
migration. Edit the first line of the migrate script to include the
proper path to tcsh on your system if it is not /usr/bin/tcsh. Then
execute the following commands.
cd $HOME/COIN
tar -czvf SYMPHONY.tgz SYMPHONY/*
cd SYMPHONY
rm -rf Template/Common
rm -rf MPP/Common
chmod u+x migrate
./migrate
cvs update -dP
You should not see any errors when doing the update or making SYMPHONY.
If this is the case, you can safely delete $HOME/COIN/SYMPHONY.tgz. If
there are errors, please report them to the mailing list. Finally, clean
out the old build directories and try making SYMPHONY
rm -rf dep.* lib.* bin.* objects.*
rm -rf Applications/*/dep.* Applications/*/lib.* \
Applications/*/bin.* Applications/*/objects.*
make
You shouldn't see any errors when rebuilding. Please let us know if
there are any.
Migrating in Windows
====================
The only migration option in Windows is to check out a fresh copy of the
SYMPHONY directory from CVS, as described above. Follow these steps:
1. Rename the COIN/SYMPHONY directory COIN/SYMPHONY.tmp
2. Make a new directory COIN.tmp
3. Checkout the SYMPHONY module in COIN.tmp
4. Move COIN.tmp/COIN/SYMPHONY COIN/SYMPHONY
5. Remove COIN.tmp
6. Move any locally modified or created files from COIN/SYMPHONY.tmp to
COIN/SYMPHONY
7. Remove COIN/SYMPHONY.tmp
Remove old build directories and try to build SYMPHONY again. Please let
us know if there are any problems.
Thank you for your patience with this move and let us know if you have
any questions.
Cheers,
Ted
--
Dr. Ted Ralphs
Assistant Professor
Industrial and Systems Engineering
Lehigh University
(610)758-4784
tkralphs at lehigh.edu
www.lehigh.edu/~tkr2
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: migrate
URL: <http://list.coin-or.org/pipermail/coin-discuss/attachments/20050219/50eb4e33/attachment.ksh>
More information about the Coin-discuss
mailing list