7d6f194
THIS IS HERE ONLY TO SUPPORT SYSTEMTAP DEVELOPMENT.  IT IS NOT FOR GENERAL USE.
7d6f194
7d6f194
Building systemtap requires a recent development version of elfutils,
7d6f194
which provides libraries for making use of debugging information.
7d6f194
7d6f194
This is unfinished work in active development.  This code is not intended
7d6f194
for general consumption in its present form.  Development of these
7d6f194
libraries is simultaneous with Systemtap development.  The Systemtap code
7d6f194
will require new versions as things evolve; the systemtap.spec.in file in
7d6f194
the systemtap source tree should always indicate the minimum version of
7d6f194
elfutils libraries that will suffice.  We will make an effort to make a
7d6f194
compatible version available here, that you can use for compiling Systemtap.
7d6f194
7d6f194
Current elfutils can always be found in Fedora Core Development, AKA Rawhide.
7d6f194
If you are interested in the elfutils code in general or for any purpose
7d6f194
other than developing Systemtap, please see http://fedora.redhat.com/ about
7d6f194
getting involved with Fedora Core Development directly.
7d6f194
c24df0c
To use the elfutils libraries to build Systemtap, you can either use
c24df0c
installed libraries, or you can build elfutils from source as part of the
c24df0c
systemtap build.  To use installed libraries, you'll need to have the
c24df0c
current elfutils version installed on your system where the compiler will
c24df0c
find it with whatever build flags you pass systemtap's configure script.
c24df0c
Unless your system already has the current elfutils installed
c24df0c
(i.e. Rawhide), you'll have to install a nonstandard build either via RPM
c24df0c
or by hand with "make" as detailed below.  To build the elfutils source
c24df0c
locally as part of the systemtap build, see systemtap's README about the
c24df0c
--with-elfutils=... option to systemtap's configure.
c24df0c
7d6f194
You can find the rawhide rpms updated daily on a variety of sites
7d6f194
(see http://fedora.redhat.com/download/mirrors.html) under core/development.
7d6f194
What's distributed in this directory is made trivially from those same sources.
7d6f194
7d6f194
The vanilla elfutils code, in elfutils-VERSION.tar.gz and what the rawhide
7d6f194
RPMs ordinarily build, can only be built using GCC 4 and a recent glibc.
7d6f194
Fedora Core 4 is the only released system meeting the requirements.
7d6f194
7d6f194
To rebuild the rawhide src.rpm on an older system, you can use:
7d6f194
7d6f194
	rpmbuild --with compat --rebuild elfutils-VERSION-N.src.rpm
7d6f194
7d6f194
The SRPMS/elfutils-VERSION-0.N.src.rpm provided here is exactly the same as
7d6f194
the elfutils-VERSION-N.src.rpm from Rawhide except that it doesn't require
7d6f194
that you specify --with compat to build on an older system.
7d6f194
7d6f194
We have done this for you for a few architectures, and those RPMs are
7d6f194
available here.  These were built on RHEL3, and so their requirements
7d6f194
should not be too demanding.  We must remind you that this is unsupported,
7d6f194
pre-beta development code.  Furthermore, these builds are completely
7d6f194
unofficial, unsupported, unsigned, unlikely to have been tested,
7d6f194
unequivocally not guaranteed not to ruin your whole day, and we really
7d6f194
cannot recommend that anyone install them on their system.  Do so at your
7d6f194
own risk.  All that said, here they is, and if you copy this file:
7d6f194
7d6f194
	ftp://sources.redhat.com/pub/systemtap/elfutils/systemtap-elfutils.repo
7d6f194
0efeb0f
into your /etc/yum.repos.d/ directory, then you can get them all with just:
7d6f194
0efeb0f
	yum install elfutils-devel
7d6f194
7d6f194
7d6f194
To compile elfutils from source by hand, simply use elfutils-VERSION.tar.gz
7d6f194
and follow the usual procedure for GNU configure conventions.  The patch
7d6f194
available here has to be applied before you can compile on an older system:
7d6f194
7d6f194
	tar xzf elfutils-VERSION.tar.gz
7d6f194
	patch -p1 -d elfutils-VERSION < elfutils-portability.patch
7d6f194
	cd elfutils-VERSION
2fca479
	./configure --program-prefix=eu-devel-
2fca479
	make && make check && make install
7d6f194
7d6f194
(That of course installs things under /usr/local, unlike the RPMs.)
7d6f194
7d6f194
c24df0c
Caveat emptor.  Carpe noctem.
58d3b9c
Reply to <systemtap@sources.redhat.com>.