Blob Blame History Raw
THIS IS HERE ONLY TO SUPPORT SYSTEMTAP DEVELOPMENT.  IT IS NOT FOR GENERAL USE.

Building systemtap requires a recent development version of elfutils,
which provides libraries for making use of debugging information.

This is unfinished work in active development.  This code is not intended
for general consumption in its present form.  Development of these
libraries is simultaneous with Systemtap development.  The Systemtap code
will require new versions as things evolve; the systemtap.spec.in file in
the systemtap source tree should always indicate the minimum version of
elfutils libraries that will suffice.  We will make an effort to make a
compatible version available here, that you can use for compiling Systemtap.

Current elfutils can always be found in Fedora Core Development, AKA Rawhide.
If you are interested in the elfutils code in general or for any purpose
other than developing Systemtap, please see http://fedora.redhat.com/ about
getting involved with Fedora Core Development directly.

To use the elfutils libraries to build Systemtap, you can either use
installed libraries, or you can build elfutils from source as part of the
systemtap build.  To use installed libraries, you'll need to have the
current elfutils version installed on your system where the compiler will
find it with whatever build flags you pass systemtap's configure script.
Unless your system already has the current elfutils installed
(i.e. Rawhide), you'll have to install a nonstandard build either via RPM
or by hand with "make" as detailed below.  To build the elfutils source
locally as part of the systemtap build, see systemtap's README about the
--with-elfutils=... option to systemtap's configure.

You can find the rawhide rpms updated daily on a variety of sites
(see http://fedora.redhat.com/download/mirrors.html) under core/development.
What's distributed in this directory is made trivially from those same sources.

The vanilla elfutils code, in elfutils-VERSION.tar.gz and what the rawhide
RPMs ordinarily build, can only be built using GCC 4 and a recent glibc.
Fedora Core 4 is the only released system meeting the requirements.

To rebuild the rawhide src.rpm on an older system, you can use:

	rpmbuild --with compat --rebuild elfutils-VERSION-N.src.rpm

The SRPMS/elfutils-VERSION-0.N.src.rpm provided here is exactly the same as
the elfutils-VERSION-N.src.rpm from Rawhide except that it doesn't require
that you specify --with compat to build on an older system.

We have done this for you for a few architectures, and those RPMs are
available here.  These were built on RHEL3, and so their requirements
should not be too demanding.  We must remind you that this is unsupported,
pre-beta development code.  Furthermore, these builds are completely
unofficial, unsupported, unsigned, unlikely to have been tested,
unequivocally not guaranteed not to ruin your whole day, and we really
cannot recommend that anyone install them on their system.  Do so at your
own risk.  All that said, here they is, and if you copy this file:

	ftp://sources.redhat.com/pub/systemtap/elfutils/systemtap-elfutils.repo

into your /etc/yum.repos.d/ directory, then you can get them all with just:

	yum install elfutils-devel


To compile elfutils from source by hand, simply use elfutils-VERSION.tar.gz
and follow the usual procedure for GNU configure conventions.  The patch
available here has to be applied before you can compile on an older system:

	tar xzf elfutils-VERSION.tar.gz
	patch -p1 -d elfutils-VERSION < elfutils-portability.patch
	cd elfutils-VERSION
	./configure --program-prefix=eu-devel-
	make && make check && make install

(That of course installs things under /usr/local, unlike the RPMs.)


Caveat emptor.  Carpe noctem.
Reply to <systemtap@sources.redhat.com>.