Re: [PATCH 2/3] perf tools: Fix build for hardened environments

From: Arnaldo Carvalho de Melo
Date: Wed Nov 29 2017 - 14:54:56 EST


Em Fri, Nov 10, 2017 at 10:43:25AM +0100, Jiri Olsa escreveu:
> On Thu, Nov 09, 2017 at 09:52:12AM -0300, Arnaldo Carvalho de Melo wrote:
> > Right, since we want to honour what the distro makers decided was the
> > best set for them, and to be able to link with other libraries, etc.

> > But then I think this should be done more explicitely, right? Do you
> > envision some way to do that without having to try to build perl or
> > python, that may not be installed, etc?

> I'll check on it.. I think we could use feature detection and
> enable that by default and add NO_HARDENED_BUILD variable as
> we do for features.. and detect that python/perl or whatever
> else is using that and warn

> > Of course users wanting to use something different may just set CFLAGS
> > and be done with it, in which case I think this should also affect the
> > perl and python CFLAGS, removing that distro specific stuff since the
> > user is changing something different.

> yep

Even with this patch applied, as a stopgap solution to allow me to build
a full featured tool on f27, I get this leftover:

LINK /tmp/build/perf/perf
/usr/bin/ld: /tmp/build/perf/libperf.a(libperf-in.o): relocation R_X86_64_32S against symbol `inat_primary_table' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status


Looking at the Intel PT bits now...

- Arnaldo