* Re: [tip:perf/urgent] perf tools: Fix the NO_64BIT build on pure 64-bit systems
[not found] <tip-55621ccf2b7a8afe39df8c80f55b28424fd07d13@git.kernel.org>
@ 2009-10-13 21:09 ` Randy Dunlap
2009-10-14 6:20 ` Ingo Molnar
0 siblings, 1 reply; 8+ messages in thread
From: Randy Dunlap @ 2009-10-13 21:09 UTC (permalink / raw)
To: linux-kernel, mingo, hpa, paulus, acme, a.p.zijlstra, efault,
randy.dunlap, fweisbec, tglx, mingo
Cc: tip-bot for Ingo Molnar, linux-tip-commits, acme, paulus, hpa,
mingo, a.p.zijlstra, efault, fweisbec, tglx
On Mon, 12 Oct 2009 08:34:16 GMT tip-bot for Ingo Molnar wrote:
> Commit-ID: 55621ccf2b7a8afe39df8c80f55b28424fd07d13
> Gitweb: http://git.kernel.org/tip/55621ccf2b7a8afe39df8c80f55b28424fd07d13
> Author: Ingo Molnar <mingo@elte.hu>
> AuthorDate: Mon, 12 Oct 2009 09:57:25 +0200
> Committer: Ingo Molnar <mingo@elte.hu>
> CommitDate: Mon, 12 Oct 2009 10:00:27 +0200
>
> perf tools: Fix the NO_64BIT build on pure 64-bit systems
>
> Randy Dunlap reported that 'make NO_64BIT=1' fails to build
> a pure 32-b it binary on 64-bit/64-bit x86 systems.
>
> The reason is that we dont pass in the -m32 and GCC defaults
> to -m64.
>
> So pass it in - and also extend the warning message about libelf
> dependencies - glibc-dev[el] is needed as well beyond the libelf
> library.
Ingo, thanks, I finally got this working, after installing more 32-bit
libs etc., like Kyle said that I would need to do.
The error message is still a little misleading/confusing:
Makefile:426: *** No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
when elfutils-libelf-devel.i586 is installed but glibc-devel.i[56]86 is not
installed. gcc failed with:
In file included from /usr/include/features.h:376,
from /usr/include/sys/types.h:27,
from /usr/include/libelf.h:53,
from elfdeveltest.c:1:
/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
> Reported-by: Randy Dunlap <randy.dunlap@oracle.com>
> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
> Cc: Frederic Weisbecker <fweisbec@gmail.com>
> Cc: Mike Galbraith <efault@gmx.de>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
> LKML-Reference: Message-Id: <20091005131729.78444bfb.randy.dunlap@oracle.com>
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
> ---
> tools/perf/Makefile | 21 ++++++++++++++-------
> 1 files changed, 14 insertions(+), 7 deletions(-)
>
> diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> index 5881943..742a32e 100644
> --- a/tools/perf/Makefile
> +++ b/tools/perf/Makefile
> @@ -157,11 +157,18 @@ uname_R := $(shell sh -c 'uname -r 2>/dev/null || echo not')
> uname_P := $(shell sh -c 'uname -p 2>/dev/null || echo not')
> uname_V := $(shell sh -c 'uname -v 2>/dev/null || echo not')
>
> -# If we're on a 64-bit kernel, use -m64
> -ifndef NO_64BIT
> - ifneq ($(patsubst %64,%,$(uname_M)),$(uname_M))
> - M64 := -m64
> - endif
> +#
> +# Add -m32 for cross-builds:
> +#
> +ifdef NO_64BIT
> + MBITS := -m32
> +else
> + #
> + # If we're on a 64-bit kernel, use -m64:
> + #
> + ifneq ($(patsubst %64,%,$(uname_M)),$(uname_M))
> + MBITS := -m64
> + endif
> endif
>
> # CFLAGS and LDFLAGS are for the users to override from the command line.
> @@ -194,7 +201,7 @@ EXTRA_WARNINGS := $(EXTRA_WARNINGS) -Wold-style-definition
> EXTRA_WARNINGS := $(EXTRA_WARNINGS) -Wstrict-prototypes
> EXTRA_WARNINGS := $(EXTRA_WARNINGS) -Wdeclaration-after-statement
>
> -CFLAGS = $(M64) -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -fstack-protector-all -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS)
> +CFLAGS = $(MBITS) -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -fstack-protector-all -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS)
> LDFLAGS = -lpthread -lrt -lelf -lm
> ALL_CFLAGS = $(CFLAGS)
> ALL_LDFLAGS = $(LDFLAGS)
> @@ -416,7 +423,7 @@ ifeq ($(uname_S),Darwin)
> endif
>
> ifneq ($(shell sh -c "(echo '\#include <libelf.h>'; echo 'int main(void) { Elf * elf = elf_begin(0, ELF_C_READ_MMAP, 0); return (long)elf; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) > /dev/null 2>&1 && echo y"), y)
> - msg := $(error No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel);
> + msg := $(error No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]);
> endif
>
> ifdef NO_DEMANGLE
---
~Randy
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [tip:perf/urgent] perf tools: Fix the NO_64BIT build on pure 64-bit systems
2009-10-13 21:09 ` [tip:perf/urgent] perf tools: Fix the NO_64BIT build on pure 64-bit systems Randy Dunlap
@ 2009-10-14 6:20 ` Ingo Molnar
2009-10-14 14:44 ` Randy Dunlap
0 siblings, 1 reply; 8+ messages in thread
From: Ingo Molnar @ 2009-10-14 6:20 UTC (permalink / raw)
To: Randy Dunlap
Cc: linux-kernel, mingo, hpa, paulus, acme, a.p.zijlstra, efault,
fweisbec, tglx, linux-tip-commits
* Randy Dunlap <randy.dunlap@ORACLE.COM> wrote:
> On Mon, 12 Oct 2009 08:34:16 GMT tip-bot for Ingo Molnar wrote:
>
> > Commit-ID: 55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > Gitweb: http://git.kernel.org/tip/55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > Author: Ingo Molnar <mingo@elte.hu>
> > AuthorDate: Mon, 12 Oct 2009 09:57:25 +0200
> > Committer: Ingo Molnar <mingo@elte.hu>
> > CommitDate: Mon, 12 Oct 2009 10:00:27 +0200
> >
> > perf tools: Fix the NO_64BIT build on pure 64-bit systems
> >
> > Randy Dunlap reported that 'make NO_64BIT=1' fails to build
> > a pure 32-b it binary on 64-bit/64-bit x86 systems.
> >
> > The reason is that we dont pass in the -m32 and GCC defaults
> > to -m64.
> >
> > So pass it in - and also extend the warning message about libelf
> > dependencies - glibc-dev[el] is needed as well beyond the libelf
> > library.
>
> Ingo, thanks, I finally got this working, after installing more 32-bit
> libs etc., like Kyle said that I would need to do.
>
> The error message is still a little misleading/confusing:
> Makefile:426: *** No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
>
> when elfutils-libelf-devel.i586 is installed but glibc-devel.i[56]86 is not
> installed. gcc failed with:
> In file included from /usr/include/features.h:376,
> from /usr/include/sys/types.h:27,
> from /usr/include/libelf.h:53,
> from elfdeveltest.c:1:
> /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
Why is it misleading? It says it very clearly that you need to install
both:
please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
Ingo
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [tip:perf/urgent] perf tools: Fix the NO_64BIT build on pure 64-bit systems
2009-10-14 6:20 ` Ingo Molnar
@ 2009-10-14 14:44 ` Randy Dunlap
2009-10-14 15:58 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 8+ messages in thread
From: Randy Dunlap @ 2009-10-14 14:44 UTC (permalink / raw)
To: Ingo Molnar
Cc: Randy Dunlap, linux-kernel, mingo, hpa, paulus, acme,
a.p.zijlstra, efault, fweisbec, tglx, linux-tip-commits
On Wed, 14 Oct 2009 08:20:52 +0200 Ingo Molnar wrote:
>
> * Randy Dunlap <randy.dunlap@ORACLE.COM> wrote:
>
> > On Mon, 12 Oct 2009 08:34:16 GMT tip-bot for Ingo Molnar wrote:
> >
> > > Commit-ID: 55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > > Gitweb: http://git.kernel.org/tip/55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > > Author: Ingo Molnar <mingo@elte.hu>
> > > AuthorDate: Mon, 12 Oct 2009 09:57:25 +0200
> > > Committer: Ingo Molnar <mingo@elte.hu>
> > > CommitDate: Mon, 12 Oct 2009 10:00:27 +0200
> > >
> > > perf tools: Fix the NO_64BIT build on pure 64-bit systems
> > >
> > > Randy Dunlap reported that 'make NO_64BIT=1' fails to build
> > > a pure 32-b it binary on 64-bit/64-bit x86 systems.
> > >
> > > The reason is that we dont pass in the -m32 and GCC defaults
> > > to -m64.
> > >
> > > So pass it in - and also extend the warning message about libelf
> > > dependencies - glibc-dev[el] is needed as well beyond the libelf
> > > library.
> >
> > Ingo, thanks, I finally got this working, after installing more 32-bit
> > libs etc., like Kyle said that I would need to do.
> >
> > The error message is still a little misleading/confusing:
> > Makefile:426: *** No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
> >
> > when elfutils-libelf-devel.i586 is installed but glibc-devel.i[56]86 is not
> > installed. gcc failed with:
> > In file included from /usr/include/features.h:376,
> > from /usr/include/sys/types.h:27,
> > from /usr/include/libelf.h:53,
> > from elfdeveltest.c:1:
> > /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
>
> Why is it misleading? It says it very clearly that you need to install
> both:
>
> please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
It also says very clearly:
Makefile:426: *** No libelf.h/libelf found
which is not correct.
---
~Randy
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [tip:perf/urgent] perf tools: Fix the NO_64BIT build on pure 64-bit systems
2009-10-14 14:44 ` Randy Dunlap
@ 2009-10-14 15:58 ` Arnaldo Carvalho de Melo
2009-10-14 16:01 ` Ingo Molnar
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Arnaldo Carvalho de Melo @ 2009-10-14 15:58 UTC (permalink / raw)
To: Randy Dunlap
Cc: Ingo Molnar, linux-kernel, mingo, hpa, paulus, a.p.zijlstra,
efault, fweisbec, tglx, linux-tip-commits
Em Wed, Oct 14, 2009 at 07:44:04AM -0700, Randy Dunlap escreveu:
> On Wed, 14 Oct 2009 08:20:52 +0200 Ingo Molnar wrote:
>
> >
> > * Randy Dunlap <randy.dunlap@ORACLE.COM> wrote:
> >
> > > On Mon, 12 Oct 2009 08:34:16 GMT tip-bot for Ingo Molnar wrote:
> > >
> > > > Commit-ID: 55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > > > Gitweb: http://git.kernel.org/tip/55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > > > Author: Ingo Molnar <mingo@elte.hu>
> > > > AuthorDate: Mon, 12 Oct 2009 09:57:25 +0200
> > > > Committer: Ingo Molnar <mingo@elte.hu>
> > > > CommitDate: Mon, 12 Oct 2009 10:00:27 +0200
> > > >
> > > > perf tools: Fix the NO_64BIT build on pure 64-bit systems
> > > >
> > > > Randy Dunlap reported that 'make NO_64BIT=1' fails to build
> > > > a pure 32-b it binary on 64-bit/64-bit x86 systems.
> > > >
> > > > The reason is that we dont pass in the -m32 and GCC defaults
> > > > to -m64.
> > > >
> > > > So pass it in - and also extend the warning message about libelf
> > > > dependencies - glibc-dev[el] is needed as well beyond the libelf
> > > > library.
> > >
> > > Ingo, thanks, I finally got this working, after installing more 32-bit
> > > libs etc., like Kyle said that I would need to do.
> > >
> > > The error message is still a little misleading/confusing:
> > > Makefile:426: *** No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
> > >
> > > when elfutils-libelf-devel.i586 is installed but glibc-devel.i[56]86 is not
> > > installed. gcc failed with:
> > > In file included from /usr/include/features.h:376,
> > > from /usr/include/sys/types.h:27,
> > > from /usr/include/libelf.h:53,
> > > from elfdeveltest.c:1:
> > > /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
> >
> > Why is it misleading? It says it very clearly that you need to install
> > both:
> >
> > please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
>
> It also says very clearly:
>
> Makefile:426: *** No libelf.h/libelf found
>
> which is not correct.
So the correct way is to first look for the presence of glibc-devel,
barf if its not present, then after that, do what is done now and test
for the presence of libelf.h :-\
But if one just follows the suggestion, and installs the suggested
packages, it should work, no?
- Arnaldo
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [tip:perf/urgent] perf tools: Fix the NO_64BIT build on pure 64-bit systems
2009-10-14 15:58 ` Arnaldo Carvalho de Melo
@ 2009-10-14 16:01 ` Ingo Molnar
2009-10-14 16:02 ` Randy Dunlap
2009-10-19 2:20 ` [PATCH] perf tools: better error messages on missing packages Randy Dunlap
2 siblings, 0 replies; 8+ messages in thread
From: Ingo Molnar @ 2009-10-14 16:01 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Randy Dunlap, linux-kernel, mingo, hpa, paulus, a.p.zijlstra,
efault, fweisbec, tglx, linux-tip-commits
* Arnaldo Carvalho de Melo <acme@redhat.com> wrote:
> Em Wed, Oct 14, 2009 at 07:44:04AM -0700, Randy Dunlap escreveu:
> > On Wed, 14 Oct 2009 08:20:52 +0200 Ingo Molnar wrote:
> >
> > >
> > > * Randy Dunlap <randy.dunlap@ORACLE.COM> wrote:
> > >
> > > > On Mon, 12 Oct 2009 08:34:16 GMT tip-bot for Ingo Molnar wrote:
> > > >
> > > > > Commit-ID: 55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > > > > Gitweb: http://git.kernel.org/tip/55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > > > > Author: Ingo Molnar <mingo@elte.hu>
> > > > > AuthorDate: Mon, 12 Oct 2009 09:57:25 +0200
> > > > > Committer: Ingo Molnar <mingo@elte.hu>
> > > > > CommitDate: Mon, 12 Oct 2009 10:00:27 +0200
> > > > >
> > > > > perf tools: Fix the NO_64BIT build on pure 64-bit systems
> > > > >
> > > > > Randy Dunlap reported that 'make NO_64BIT=1' fails to build
> > > > > a pure 32-b it binary on 64-bit/64-bit x86 systems.
> > > > >
> > > > > The reason is that we dont pass in the -m32 and GCC defaults
> > > > > to -m64.
> > > > >
> > > > > So pass it in - and also extend the warning message about libelf
> > > > > dependencies - glibc-dev[el] is needed as well beyond the libelf
> > > > > library.
> > > >
> > > > Ingo, thanks, I finally got this working, after installing more 32-bit
> > > > libs etc., like Kyle said that I would need to do.
> > > >
> > > > The error message is still a little misleading/confusing:
> > > > Makefile:426: *** No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
> > > >
> > > > when elfutils-libelf-devel.i586 is installed but glibc-devel.i[56]86 is not
> > > > installed. gcc failed with:
> > > > In file included from /usr/include/features.h:376,
> > > > from /usr/include/sys/types.h:27,
> > > > from /usr/include/libelf.h:53,
> > > > from elfdeveltest.c:1:
> > > > /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
> > >
> > > Why is it misleading? It says it very clearly that you need to install
> > > both:
> > >
> > > please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
> >
> > It also says very clearly:
> >
> > Makefile:426: *** No libelf.h/libelf found
> >
> > which is not correct.
>
> So the correct way is to first look for the presence of glibc-devel,
> barf if its not present, then after that, do what is done now and test
> for the presence of libelf.h :-\
>
> But if one just follows the suggestion, and installs the suggested
> packages, it should work, no?
well .. send me a patch that makes the message more ambigious, so that
we output something like:
> Makefile:426: *** No ELF support found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
that should make it useful enough, without complicating the make rules.
Ingo
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [tip:perf/urgent] perf tools: Fix the NO_64BIT build on pure 64-bit systems
2009-10-14 15:58 ` Arnaldo Carvalho de Melo
2009-10-14 16:01 ` Ingo Molnar
@ 2009-10-14 16:02 ` Randy Dunlap
2009-10-19 2:20 ` [PATCH] perf tools: better error messages on missing packages Randy Dunlap
2 siblings, 0 replies; 8+ messages in thread
From: Randy Dunlap @ 2009-10-14 16:02 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Ingo Molnar, linux-kernel, mingo, hpa, paulus, a.p.zijlstra,
efault, fweisbec, tglx, linux-tip-commits
On Wed, 14 Oct 2009 12:58:48 -0300 Arnaldo Carvalho de Melo wrote:
> Em Wed, Oct 14, 2009 at 07:44:04AM -0700, Randy Dunlap escreveu:
> > On Wed, 14 Oct 2009 08:20:52 +0200 Ingo Molnar wrote:
> >
> > >
> > > * Randy Dunlap <randy.dunlap@ORACLE.COM> wrote:
> > >
> > > > On Mon, 12 Oct 2009 08:34:16 GMT tip-bot for Ingo Molnar wrote:
> > > >
> > > > > Commit-ID: 55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > > > > Gitweb: http://git.kernel.org/tip/55621ccf2b7a8afe39df8c80f55b28424fd07d13
> > > > > Author: Ingo Molnar <mingo@elte.hu>
> > > > > AuthorDate: Mon, 12 Oct 2009 09:57:25 +0200
> > > > > Committer: Ingo Molnar <mingo@elte.hu>
> > > > > CommitDate: Mon, 12 Oct 2009 10:00:27 +0200
> > > > >
> > > > > perf tools: Fix the NO_64BIT build on pure 64-bit systems
> > > > >
> > > > > Randy Dunlap reported that 'make NO_64BIT=1' fails to build
> > > > > a pure 32-b it binary on 64-bit/64-bit x86 systems.
> > > > >
> > > > > The reason is that we dont pass in the -m32 and GCC defaults
> > > > > to -m64.
> > > > >
> > > > > So pass it in - and also extend the warning message about libelf
> > > > > dependencies - glibc-dev[el] is needed as well beyond the libelf
> > > > > library.
> > > >
> > > > Ingo, thanks, I finally got this working, after installing more 32-bit
> > > > libs etc., like Kyle said that I would need to do.
> > > >
> > > > The error message is still a little misleading/confusing:
> > > > Makefile:426: *** No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
> > > >
> > > > when elfutils-libelf-devel.i586 is installed but glibc-devel.i[56]86 is not
> > > > installed. gcc failed with:
> > > > In file included from /usr/include/features.h:376,
> > > > from /usr/include/sys/types.h:27,
> > > > from /usr/include/libelf.h:53,
> > > > from elfdeveltest.c:1:
> > > > /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
> > >
> > > Why is it misleading? It says it very clearly that you need to install
> > > both:
> > >
> > > please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]. Stop.
> >
> > It also says very clearly:
> >
> > Makefile:426: *** No libelf.h/libelf found
> >
> > which is not correct.
>
> So the correct way is to first look for the presence of glibc-devel,
> barf if its not present, then after that, do what is done now and test
> for the presence of libelf.h :-\
>
> But if one just follows the suggestion, and installs the suggested
> packages, it should work, no?
Yes, it's just the confusing message...
---
~Randy
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH] perf tools: better error messages on missing packages
2009-10-14 15:58 ` Arnaldo Carvalho de Melo
2009-10-14 16:01 ` Ingo Molnar
2009-10-14 16:02 ` Randy Dunlap
@ 2009-10-19 2:20 ` Randy Dunlap
2009-10-19 8:42 ` [tip:perf/core] perf tools: Display " tip-bot for Randy Dunlap
2 siblings, 1 reply; 8+ messages in thread
From: Randy Dunlap @ 2009-10-19 2:20 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Ingo Molnar, linux-kernel, mingo, hpa, paulus, a.p.zijlstra,
efault, fweisbec, tglx
From: Randy Dunlap <randy.dunlap@oracle.com>
Check for libelf headers and glibc headers separately so that
the error message correctly identifies which package
installation is missing/needed.
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
---
tools/perf/Makefile | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
--- lnx-2632-rc5.orig/tools/perf/Makefile
+++ lnx-2632-rc5/tools/perf/Makefile
@@ -422,8 +422,12 @@ ifeq ($(uname_S),Darwin)
PTHREAD_LIBS =
endif
+ifneq ($(shell sh -c "(echo '\#include <gnu/libc-version.h>'; echo 'int main(void) { const char * version = gnu_get_libc_version(); return (long)version; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) > /dev/null 2>&1 && echo y"), y)
+ msg := $(error No gnu/libc-version.h found, please install glibc-dev[el]);
+endif
+
ifneq ($(shell sh -c "(echo '\#include <libelf.h>'; echo 'int main(void) { Elf * elf = elf_begin(0, ELF_C_READ_MMAP, 0); return (long)elf; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) > /dev/null 2>&1 && echo y"), y)
- msg := $(error No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]);
+ msg := $(error No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel);
endif
ifdef NO_DEMANGLE
^ permalink raw reply [flat|nested] 8+ messages in thread
* [tip:perf/core] perf tools: Display better error messages on missing packages
2009-10-19 2:20 ` [PATCH] perf tools: better error messages on missing packages Randy Dunlap
@ 2009-10-19 8:42 ` tip-bot for Randy Dunlap
0 siblings, 0 replies; 8+ messages in thread
From: tip-bot for Randy Dunlap @ 2009-10-19 8:42 UTC (permalink / raw)
To: linux-tip-commits
Cc: linux-kernel, acme, hpa, mingo, tglx, randy.dunlap, mingo
Commit-ID: 1abc7f5500fff8422f34826a006648d8741d83d3
Gitweb: http://git.kernel.org/tip/1abc7f5500fff8422f34826a006648d8741d83d3
Author: Randy Dunlap <randy.dunlap@oracle.com>
AuthorDate: Sun, 18 Oct 2009 19:20:24 -0700
Committer: Ingo Molnar <mingo@elte.hu>
CommitDate: Mon, 19 Oct 2009 10:06:37 +0200
perf tools: Display better error messages on missing packages
Check for libelf headers and glibc headers separately so that
the error message correctly identifies which package
installation is missing/needed.
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Cc: paulus@samba.org
Cc: a.p.zijlstra@chello.nl
Cc: efault@gmx.de
Cc: fweisbec@gmail.com
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
LKML-Reference: <4ADBCCE8.3060300@oracle.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
tools/perf/Makefile | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index 2400e50..db89a6d 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -431,8 +431,12 @@ ifeq ($(uname_S),Darwin)
PTHREAD_LIBS =
endif
+ifneq ($(shell sh -c "(echo '\#include <gnu/libc-version.h>'; echo 'int main(void) { const char * version = gnu_get_libc_version(); return (long)version; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) > /dev/null 2>&1 && echo y"), y)
+ msg := $(error No gnu/libc-version.h found, please install glibc-dev[el]);
+endif
+
ifneq ($(shell sh -c "(echo '\#include <libelf.h>'; echo 'int main(void) { Elf * elf = elf_begin(0, ELF_C_READ_MMAP, 0); return (long)elf; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) > /dev/null 2>&1 && echo y"), y)
- msg := $(error No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]);
+ msg := $(error No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel);
endif
ifdef NO_DEMANGLE
^ permalink raw reply related [flat|nested] 8+ messages in thread
end of thread, other threads:[~2009-10-19 8:43 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <tip-55621ccf2b7a8afe39df8c80f55b28424fd07d13@git.kernel.org>
2009-10-13 21:09 ` [tip:perf/urgent] perf tools: Fix the NO_64BIT build on pure 64-bit systems Randy Dunlap
2009-10-14 6:20 ` Ingo Molnar
2009-10-14 14:44 ` Randy Dunlap
2009-10-14 15:58 ` Arnaldo Carvalho de Melo
2009-10-14 16:01 ` Ingo Molnar
2009-10-14 16:02 ` Randy Dunlap
2009-10-19 2:20 ` [PATCH] perf tools: better error messages on missing packages Randy Dunlap
2009-10-19 8:42 ` [tip:perf/core] perf tools: Display " tip-bot for Randy Dunlap
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.