Em Mon, Aug 31, 2015 at 02:09:41PM +0000, Wang Nan escreveu:
> Cross compiling perf to other platform failed due to missing symbol:

Adrian, I think this one covers what you would resend, no? If it does,
can I have your Acked-by?

- Arnaldo
 
>   ...
>   AR       /pathofperf/libperf.a
>   LD       /pathofperf/tests/perf-in.o
>   LD       /pathofperf/perf-in.o
>   LINK     /pathofperf/perf
> /pathofperf/libperf.a(libperf-in.o): In function 
> `intel_pt_synth_branch_sample':
> /usr/src/kernel/tools/perf/util/intel-pt.c:899: undefined reference to 
> `tsc_to_perf_time'
> /pathofperf/libperf.a(libperf-in.o): In function 
> `intel_pt_synth_transaction_sample':
> /usr/src/kernel/tools/perf/util/intel-pt.c:992: undefined reference to 
> `tsc_to_perf_time'
> /pathofperf/libperf.a(libperf-in.o): In function 
> `intel_pt_synth_instruction_sample':
> /usr/src/kernel/tools/perf/util/intel-pt.c:943: undefined reference to 
> `tsc_to_perf_time'
>   ...
> 
> This is because we allow newly introduced intel-pt-decoder to be
> compiled to not only X86, but tsc.c which required by it is compiled
> for x86 only.
> 
> This patch fix the compiling error by allow tsc.c to be compiled if
> CONFIG_AUXTRACE is set, no matter the target platform.
> 
> Comment from Arnaldo:
> 
> There were some changes in this area, i.e. x86 needs tsc, and auxtrace
> as well, so both should express that via:
> 
>  libperf-$(CONFIG_X86) += tsc.o
>  libperf-$(CONFIG_AUXTRACE) += tsc.o
> 
> Because on !x86 we want to process perf.data files containing Intel PT.
> 
> Signed-off-by: Wang Nan <wangn...@huawei.com>
> Cc: Arnaldo Carvalho de Melo <a...@redhat.com>
> ---
>  tools/perf/util/Build | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tools/perf/util/Build b/tools/perf/util/Build
> index fd2f084..e712311 100644
> --- a/tools/perf/util/Build
> +++ b/tools/perf/util/Build
> @@ -75,6 +75,7 @@ libperf-y += record.o
>  libperf-y += srcline.o
>  libperf-y += data.o
>  libperf-$(CONFIG_X86) += tsc.o
> +libperf-$(CONFIG_AUXTRACE) += tsc.o
>  libperf-y += cloexec.o
>  libperf-y += thread-stack.o
>  libperf-$(CONFIG_AUXTRACE) += auxtrace.o
> -- 
> 1.8.3.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to