2010-04-26 14:26:47

by Stefan Hajnoczi

[permalink] [raw]
Subject: [PATCH] perf: Fix libdw-dev package name in error message

The headers required for DWARF support are provided by the libdw-dev
package in Debian-based distros. This patch corrects the elfutils-dev
package name to libdw-dev in the Makefile error message when libdw.h is
not found.

Signed-off-by: Stefan Hajnoczi <[email protected]>
---
I don't think any distro has an elfutils-dev package but the name was chosen because of the usual RedHat/Debian -devel/-dev convention.

tools/perf/Makefile | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index bc0f670..66c525b 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -505,7 +505,7 @@ else
endif

ifneq ($(shell sh -c "(echo '\#include <dwarf.h>'; echo '\#include <libdw.h>'; echo 'int main(void) { Dwarf *dbg; dbg = dwarf_begin(0, DWARF_C_READ); return (long)dbg; }') | $(CC) -x c - $(ALL_CFLAGS) -I/usr/include/elfutils -ldw -lelf -o $(BITBUCKET) $(ALL_LDFLAGS) $(EXTLIBS) "$(QUIET_STDERR)" && echo y"), y)
- msg := $(warning No libdw.h found or old libdw.h found, disables dwarf support. Please install elfutils-devel/elfutils-dev);
+ msg := $(warning No libdw.h found or old libdw.h found, disables dwarf support. Please install elfutils-devel/libdw-dev);
BASIC_CFLAGS += -DNO_DWARF_SUPPORT
else
BASIC_CFLAGS += -I/usr/include/elfutils
--
1.7.0


2010-04-26 16:14:14

by Arnaldo Carvalho de Melo

[permalink] [raw]
Subject: Re: [PATCH] perf: Fix libdw-dev package name in error message

Em Mon, Apr 26, 2010 at 03:27:03PM +0100, Stefan Hajnoczi escreveu:
> The headers required for DWARF support are provided by the libdw-dev
> package in Debian-based distros. This patch corrects the elfutils-dev
> package name to libdw-dev in the Makefile error message when libdw.h is
> not found.
>
> Signed-off-by: Stefan Hajnoczi <[email protected]>

Thanks, applied

2010-04-26 16:33:29

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: [PATCH] perf: Fix libdw-dev package name in error message

On Mon, 26 Apr 2010 15:27:03 BST, Stefan Hajnoczi said:
> The headers required for DWARF support are provided by the libdw-dev
> package in Debian-based distros. This patch corrects the elfutils-dev
> package name to libdw-dev in the Makefile error message when libdw.h is
> not found.
>
> Signed-off-by: Stefan Hajnoczi <[email protected]>
> ---
> I don't think any distro has an elfutils-dev package but the name was chosen
> because of the usual RedHat/Debian -devel/-dev convention.

elfutils-dev is wrong, elfutils-devel is right, at least for Fedora.

% repoquery -ql elfutils-devel.x86_64
/usr/include/dwarf.h
/usr/include/elfutils
/usr/include/elfutils/elf-knowledge.h
/usr/include/elfutils/libasm.h
/usr/include/elfutils/libdw.h
/usr/include/elfutils/libdwfl.h
/usr/include/elfutils/libebl.h
/usr/include/elfutils/version.h
/usr/lib64/libasm.so
/usr/lib64/libdw.so
/usr/lib64/libebl.a


Attachments:
(No filename) (227.00 B)

2010-04-27 12:59:51

by Stefan Hajnoczi

[permalink] [raw]
Subject: [tip:perf/core] perf tools: Fix libdw-dev package name in error message

Commit-ID: f93830fbb06b67848c762f2177c06cc3cbb97deb
Gitweb: http://git.kernel.org/tip/f93830fbb06b67848c762f2177c06cc3cbb97deb
Author: Stefan Hajnoczi <[email protected]>
AuthorDate: Mon, 26 Apr 2010 15:39:54 -0300
Committer: Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Mon, 26 Apr 2010 15:39:54 -0300

perf tools: Fix libdw-dev package name in error message

The headers required for DWARF support are provided by the libdw-dev
package in Debian-based distros. This patch corrects the elfutils-dev
package name to libdw-dev in the Makefile error message when libdw.h is
not found.

Signed-off-by: Stefan Hajnoczi <[email protected]>
Cc: Frederic Weisbecker <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Masami Hiramatsu <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Tom Zanussi <[email protected]>
LKML-Reference: <[email protected]>
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
---
tools/perf/Makefile | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index e8bf2e1..3ac6b67 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -504,7 +504,7 @@ PERFLIBS = $(LIB_FILE)

ifndef NO_DWARF
ifneq ($(shell sh -c "(echo '\#include <dwarf.h>'; echo '\#include <libdw.h>'; echo 'int main(void) { Dwarf *dbg; dbg = dwarf_begin(0, DWARF_C_READ); return (long)dbg; }') | $(CC) -x c - $(ALL_CFLAGS) -I/usr/include/elfutils -ldw -lelf -o $(BITBUCKET) $(ALL_LDFLAGS) $(EXTLIBS) "$(QUIET_STDERR)" && echo y"), y)
- msg := $(warning No libdw.h found or old libdw.h found, disables dwarf support. Please install elfutils-devel/elfutils-dev);
+ msg := $(warning No libdw.h found or old libdw.h found, disables dwarf support. Please install elfutils-devel/libdw-dev);
NO_DWARF := 1
endif # Dwarf support
endif # NO_DWARF

2010-04-27 13:49:13

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: [tip:perf/core] perf tools: Fix libdw-dev package name in error message

On Tue, 27 Apr 2010 12:59:19 -0000, tip-bot for Stefan Hajnoczi said:
> Commit-ID: f93830fbb06b67848c762f2177c06cc3cbb97deb
> Gitweb: http://git.kernel.org/tip/f93830fbb06b67848c762f2177c06cc3cbb97deb
> Author: Stefan Hajnoczi <[email protected]>
> AuthorDate: Mon, 26 Apr 2010 15:39:54 -0300
> Committer: Arnaldo Carvalho de Melo <[email protected]>
> CommitDate: Mon, 26 Apr 2010 15:39:54 -0300
>
> perf tools: Fix libdw-dev package name in error message
>
> The headers required for DWARF support are provided by the libdw-dev
> package in Debian-based distros.

Not all the world is Debian based. As I mentioned before, the package needed
is elfutils-devel on Redhat/Fedora systesm. For those boxes, you're changing a
'elfutil-dev' that the user can guess is supposed to be -devel, to a package
that doesn't exist on Redhat/Fedora. And to compound it, if the user guesses
that you meant libdwarf-devel, that still fails, because that does *not*
provide the libdw.h header - that's still in elfutil-devel.


Attachments:
(No filename) (227.00 B)

2010-04-27 15:00:47

by Arnaldo Carvalho de Melo

[permalink] [raw]
Subject: Re: [tip:perf/core] perf tools: Fix libdw-dev package name in error message

Em Tue, Apr 27, 2010 at 09:48:20AM -0400, [email protected] escreveu:
> On Tue, 27 Apr 2010 12:59:19 -0000, tip-bot for Stefan Hajnoczi said:
> > Commit-ID: f93830fbb06b67848c762f2177c06cc3cbb97deb
> > Gitweb: http://git.kernel.org/tip/f93830fbb06b67848c762f2177c06cc3cbb97deb
> > Author: Stefan Hajnoczi <[email protected]>
> > AuthorDate: Mon, 26 Apr 2010 15:39:54 -0300
> > Committer: Arnaldo Carvalho de Melo <[email protected]>
> > CommitDate: Mon, 26 Apr 2010 15:39:54 -0300
> >
> > perf tools: Fix libdw-dev package name in error message
> >
> > The headers required for DWARF support are provided by the libdw-dev
> > package in Debian-based distros.
>
> Not all the world is Debian based. As I mentioned before, the package needed
> is elfutils-devel on Redhat/Fedora systesm. For those boxes, you're changing a
> 'elfutil-dev' that the user can guess is supposed to be -devel, to a package
> that doesn't exist on Redhat/Fedora. And to compound it, if the user guesses
> that you meant libdwarf-devel, that still fails, because that does *not*
> provide the libdw.h header - that's still in elfutil-devel.

It works for Red Hat, the message is:

msg := $(warning No libdw.h found or old libdw.h found, disables dwarf support. Please install elfutils-devel/libdw-dev);

And, as you say:

[acme@doppio git]$ rpm -ql elfutils-devel
/usr/include/dwarf.h
/usr/include/elfutils
/usr/include/elfutils/elf-knowledge.h
/usr/include/elfutils/libasm.h
/usr/include/elfutils/libdw.h
/usr/include/elfutils/libdwfl.h
/usr/include/elfutils/libebl.h
/usr/include/elfutils/version.h
/usr/lib64/libasm.so
/usr/lib64/libdw.so
/usr/lib64/libebl.a
[acme@doppio git]$

If you have a better phrasing to avoid such misunderstandings,
please send a patch.

- Arnaldo

2010-04-27 21:58:40

by Masami Hiramatsu

[permalink] [raw]
Subject: Re: [tip:perf/core] perf tools: Fix libdw-dev package name in error message

Arnaldo Carvalho de Melo wrote:
> Em Tue, Apr 27, 2010 at 09:48:20AM -0400, [email protected] escreveu:
>> On Tue, 27 Apr 2010 12:59:19 -0000, tip-bot for Stefan Hajnoczi said:
>>> Commit-ID: f93830fbb06b67848c762f2177c06cc3cbb97deb
>>> Gitweb: http://git.kernel.org/tip/f93830fbb06b67848c762f2177c06cc3cbb97deb
>>> Author: Stefan Hajnoczi <[email protected]>
>>> AuthorDate: Mon, 26 Apr 2010 15:39:54 -0300
>>> Committer: Arnaldo Carvalho de Melo <[email protected]>
>>> CommitDate: Mon, 26 Apr 2010 15:39:54 -0300
>>>
>>> perf tools: Fix libdw-dev package name in error message
>>>
>>> The headers required for DWARF support are provided by the libdw-dev
>>> package in Debian-based distros.
>>
>> Not all the world is Debian based. As I mentioned before, the package needed
>> is elfutils-devel on Redhat/Fedora systesm. For those boxes, you're changing a
>> 'elfutil-dev' that the user can guess is supposed to be -devel, to a package
>> that doesn't exist on Redhat/Fedora. And to compound it, if the user guesses
>> that you meant libdwarf-devel, that still fails, because that does *not*
>> provide the libdw.h header - that's still in elfutil-devel.
>
> It works for Red Hat, the message is:
>
> msg := $(warning No libdw.h found or old libdw.h found, disables dwarf support. Please install elfutils-devel/libdw-dev);

Right, if someone knows some other package name on other distro,
please tell us.

Thank you,

--
Masami Hiramatsu
e-mail: [email protected]