Installing multiple toolset versions

Joel Sherrill joel.sherrill at OARcorp.com
Wed Oct 31 12:18:03 UTC 2001



Ralf Corsepius wrote:
> 
> Am Die, 2001-10-30 um 15.50 schrieb Thomas Doerfler:
> > Hi,
> >
> > currently I need to work with two distinct toolset versions
> > (gcc/binutil/newlib), since I am sharing my time between two
> > projects based on different RTEMS versions (One is the
> > PPC403/405 software splitup :-> )
> >
> > Up to now I have downloaded the "ready to run" RPMs for the
> > toolsets but in my current situation I ran into problems,
> > because at least the GCC package (powerpc-rtems-gcc-
> > gcc2.95.3newlib1.9.0-1.i386.rpm) only works when installed in
> > the default location (/opt/rtems/...), so there can only be
> > one compiler package installed for a certain target
> > architecture. Currently I use a different machine to install
> > and run the second toolset, but this is not very nice...
> >
> > Some years ago, when RPMs where not available, the tools per
> > default were installed in a dedicated directory with a unique
> > name like /usr/local/rtems/<gcc-version>-<binutil-version>-
> > <newlib-version>. Wouldn't it be a good idea to fall back to
> > such a naming scheme for future toolset RPMs?
> IMHO, no.
> 
> > Then it would be
> > possible to have multiple versions of a toolset installed on
> > the same machine and multi-project maintenance would be much
> > easier...
> The easiest solution is to build different sets of rpms for each
> toolchain.
> 
> Without using rpms you'd just have to build the toolchains twice, using
> different prefixes and PATHs.
> 
> When using rpms, you could once use the standard rtems toolchain
> (prefix=/opt/rtems) and would have to rebuild to the the second
> toolchain with different prefix (say, prefix=/opt/rtems-snapshots) but
> would also have to modify the packages' names inside of the rpm.specs .

Ralf's right. This would be a trivial thing to do locally.  The
prefix is set in one place (setup.def), and the group is set
in one place per tool (binutils, gccnewlib, gdb, and autotools).  

Hmm.. maybe it would make sense for the group to be sed'ed in
like the version numbers and patch dates.  It would make this 
even more trivial.

Once you make the minor mods to the scripts/ directory, run

../bootstrap
make 
su
make install

# cp require source to .../SOURCES
cd .../SPECS
rpm -ba XXX.spec
# if you are missing source, it will stop immediately.


> Ralf

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985



More information about the users mailing list