libelf problem with systemtap

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

libelf problem with systemtap

Badari Pulavarty
Hi,

I upgraded all my *elfutils to 0.116-0.1, but I still
get errors about the right version, while configuring
systemtap. What should I do ?

Please let me know.

Thanks,
Badari

#./configure
...
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for string.h... (cached) yes
checking for ranlib... ranlib
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... (cached) yes
checking for dwarf_diecu in -ldw... no
configure: error: systemtap requires elfutils 0.116+

elm3b155:~/systap/src # rpm -qa | grep elf
libelf-0.8.5-32.1
elfutils-debuginfo-0.116-0.1
elfutils-libs-0.116-0.1
elfutils-0.116-0.1
elfutils-libelf-0.116-0.1
elfutils-devel-0.116-0.1
elfutils-libelf-devel-0.116-0.1


Reply | Threaded
Open this post in threaded view
|

Re: libelf problem with systemtap

Roland McGrath
yum install elfutils-devel
Reply | Threaded
Open this post in threaded view
|

Re: libelf problem with systemtap

Roland McGrath
In reply to this post by Badari Pulavarty
> elfutils-libs-0.116-0.1
> elfutils-0.116-0.1
> elfutils-libelf-0.116-0.1
> elfutils-devel-0.116-0.1
> elfutils-libelf-devel-0.116-0.1

Oops, didn't see the package list.  This should be enough.
Find the bit in config.log where it shows how the test failed.

Reply | Threaded
Open this post in threaded view
|

Re: libelf problem with systemtap

Badari Pulavarty
On Fri, 2005-11-18 at 16:34 -0800, Roland McGrath wrote:

> > elfutils-libs-0.116-0.1
> > elfutils-0.116-0.1
> > elfutils-libelf-0.116-0.1
> > elfutils-devel-0.116-0.1
> > elfutils-libelf-devel-0.116-0.1
>
> Oops, didn't see the package list.  This should be enough.
> Find the bit in config.log where it shows how the test failed.
>
>

configure:5075: checking for dwarf_diecu in -ldw
configure:5105: g++ -o conftest -g -O2   conftest.cc -ldw   >&5
/usr/lib/gcc-lib/powerpc-suse-linux/3.3.3/../../../../powerpc-suse-
linux/bin/ld: cannot find -ldw
collect2: ld returned 1 exit status
configure:5111: $? = 1
configure: failed program was:
| /* confdefs.h.  */
|
| #define PACKAGE_NAME "systemtap"
| #define PACKAGE_TARNAME "systemtap"
| #define PACKAGE_VERSION "0.4.2"
| #define PACKAGE_STRING "systemtap 0.4.2"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE "systemtap"
| #define VERSION "0.4.2"
| #ifdef __cplusplus
| extern "C" void std::exit (int) throw (); using std::exit;
| #endif
| #define PROTOTYPES 1
| #define __PROTOTYPES 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_STRING_H 1
| /* end confdefs.h.  */
|
| /* Override any gcc2 internal prototype to avoid an error.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| /* We use char because int might match the return type of a gcc2
|    builtin and then its argument prototype would still apply.  */
| char dwarf_diecu ();
| int
| main ()
| {
| dwarf_diecu ();
|   ;
|   return 0;
| }
configure:5137: result: no
configure:5148: error: systemtap requires elfutils 0.116+




Reply | Threaded
Open this post in threaded view
|

Re: libelf problem with systemtap

Frank Ch. Eigler

Badari Pulavarty <[hidden email]> writes:

> configure:5105: g++ -o conftest -g -O2   conftest.cc -ldw   >&5
> /usr/lib/gcc-lib/powerpc-suse-linux/3.3.3/../../../../powerpc-suse-
> linux/bin/ld: cannot find -ldw
> [...]

You'll need to figure out where the elfutils RPMs deposited the
libdw.a/.so files on your suse box, and why the compiler didn't
manage to find them there.

- FChE