Re: container test for cross building s390 tools failing

From: Thomas-Mich Richter
Date: Thu Dec 14 2017 - 08:27:11 EST


On 12/13/2017 05:31 PM, Arnaldo Carvalho de Melo wrote:
> Hi, noticed this with my perf/core branch, will investigate later.
>
> [root@jouet ubuntu]# cat /tmp/dm.log.JAK3XV/ubuntu\:16.04-x-s390
> ubuntu:16.04-x-s390
> Downloading http://192.168.124.1/perf/perf-4.15.0-rc3.tar.xz...
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 1237k 100 1237k 0 0 236M 0 --:--:-- --:--:-- --:--:-- 402M
> make: Entering directory '/git/linux/tools/perf'
> BUILD: Doing 'make -j4' parallel build
> HOSTCC /tmp/build/perf/fixdep.o
> HOSTLD /tmp/build/perf/fixdep-in.o
> LINK /tmp/build/perf/fixdep
> sh: 1: command: Illegal option -c
>
> Auto-detecting system features:
> ... dwarf: [ on ]
> ... dwarf_getlocations: [ on ]
> ... glibc: [ on ]
> ... gtk2: [ OFF ]
> ... libaudit: [ OFF ]
> ... libbfd: [ OFF ]
> ... libelf: [ on ]
> ... libnuma: [ OFF ]
> ... numa_num_possible_cpus: [ OFF ]
> ... libperl: [ OFF ]
> ... libpython: [ OFF ]
> ... libslang: [ OFF ]
> ... libcrypto: [ OFF ]
> ... libunwind: [ OFF ]
> ... libdw-dwarf-unwind: [ on ]
> ... zlib: [ on ]
> ... lzma: [ OFF ]
> ... get_cpuid: [ OFF ]
> ... bpf: [ on ]
>
> Makefile.config:414: No sys/sdt.h found, no SDT events are defined, please install systemtap-sdt-devel or systemtap-sdt-dev
> Makefile.config:537: No libaudit.h found, disables 'trace' tool, please install audit-libs-devel or libaudit-dev
> Makefile.config:548: No libcrypto.h found, disables jitted code injection, please install libssl-devel or libssl-dev
> Makefile.config:563: slang not found, disables TUI support. Please install slang-devel, libslang-dev or libslang2-dev
> Makefile.config:577: GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev
> Makefile.config:604: Missing perl devel files. Disabling perl scripting support, please install perl-ExtUtils-Embed/libperl-dev
> Makefile.config:630: No python interpreter was found: disables Python support - please install python-devel/python-dev
> Makefile.config:699: No bfd.h/libbfd found, please install binutils-dev[el]/zlib-static/libiberty-dev to gain symbol demangling
> Makefile.config:728: No liblzma found, disables xz kernel module decompression, please install xz-devel/liblzma-dev
> Makefile.config:741: No numa.h found, disables 'perf bench numa mem' benchmark, please install numactl-devel/libnuma-devel/libnuma-dev
> Makefile.config:818: No alternatives command found, you need to set JDIR= to point to the root of your Java directory
> GEN /tmp/build/perf/common-cmds.h
> PERF_VERSION = 4.15.rc3.g5e73c6
> MKDIR /tmp/build/perf/fd/
> CC /tmp/build/perf/fd/array.o
> CC /tmp/build/perf/event-parse.o
> CC /tmp/build/perf/exec-cmd.o
> CC /tmp/build/perf/libbpf.o
> LD /tmp/build/perf/fd/libapi-in.o
> CC /tmp/build/perf/help.o
> MKDIR /tmp/build/perf/fs/
> CC /tmp/build/perf/fs/fs.o
> CC /tmp/build/perf/bpf.o
> MKDIR /tmp/build/perf/fs/
> CC /tmp/build/perf/fs/tracing_path.o
> LD /tmp/build/perf/libbpf-in.o
> LINK /tmp/build/perf/libbpf.a
> CC /tmp/build/perf/pager.o
> LD /tmp/build/perf/fs/libapi-in.o
> CC /tmp/build/perf/cpu.o
> CC /tmp/build/perf/debug.o
> CC /tmp/build/perf/str_error_r.o
> CC /tmp/build/perf/event-plugin.o
> LD /tmp/build/perf/libapi-in.o
> AR /tmp/build/perf/libapi.a
> MKDIR /tmp/build/perf/pmu-events/
> HOSTCC /tmp/build/perf/pmu-events/json.o
> CC /tmp/build/perf/parse-options.o
> CC /tmp/build/perf/trace-seq.o
> CC /tmp/build/perf/parse-filter.o
> CC /tmp/build/perf/parse-utils.o
> CC /tmp/build/perf/kbuffer-parse.o
> MKDIR /tmp/build/perf/pmu-events/
> HOSTCC /tmp/build/perf/pmu-events/jsmn.o
> HOSTCC /tmp/build/perf/pmu-events/jevents.o
> LD /tmp/build/perf/libtraceevent-in.o
> LINK /tmp/build/perf/libtraceevent.a
> CC /tmp/build/perf/run-command.o
> CC /tmp/build/perf/plugin_jbd2.o
> CC /tmp/build/perf/sigchain.o
> HOSTLD /tmp/build/perf/pmu-events/jevents-in.o
> GEN perf-archive
> CC /tmp/build/perf/subcmd-config.o
> GEN perf-with-kcore
> LD /tmp/build/perf/plugin_jbd2-in.o
> MKDIR /tmp/build/perf/util/
> CC /tmp/build/perf/util/annotate.o
> CC /tmp/build/perf/plugin_hrtimer.o
> CC /tmp/build/perf/plugin_kmem.o
> LD /tmp/build/perf/plugin_kmem-in.o
> LD /tmp/build/perf/libsubcmd-in.o
> LD /tmp/build/perf/plugin_hrtimer-in.o
> CC /tmp/build/perf/plugin_kvm.o
> AR /tmp/build/perf/libsubcmd.a
> CC /tmp/build/perf/builtin-bench.o
> In file included from util/perf_regs.h:27:0,
> from util/event.h:11,
> from util/symbol.h:16,
> from util/sort.h:12,
> from util/annotate.c:14:
> /git/linux/tools/perf/arch/s390/include/perf_regs.h:6:62: fatal error: ../../../../arch/s390/include/uapi/asm/perf_regs.h: No such file or directory
> compilation terminated.
> CC /tmp/build/perf/builtin-annotate.o
> mv: cannot stat '/tmp/build/perf/util/.annotate.o.tmp': No such file or directory
> /git/linux/tools/build/Makefile.build:96: recipe for target '/tmp/build/perf/util/annotate.o' failed
> make[4]: *** [/tmp/build/perf/util/annotate.o] Error 1
> /git/linux/tools/build/Makefile.build:139: recipe for target 'util' failed
> make[3]: *** [util] Error 2
> Makefile.perf:619: recipe for target '/tmp/build/perf/libperf-in.o' failed
> make[2]: *** [/tmp/build/perf/libperf-in.o] Error 2
> make[2]: *** Waiting for unfinished jobs....
> CC /tmp/build/perf/builtin-config.o
> In file included from util/perf_regs.h:27:0,
> from util/event.h:11,
> from util/symbol.h:16,
> from builtin-annotate.c:16:
> /git/linux/tools/perf/arch/s390/include/perf_regs.h:6:62: fatal error: ../../../../arch/s390/include/uapi/asm/perf_regs.h: No such file or directory
> In file included from util/perf_regs.h:27:0,
> from util/event.h:11,
> from util/debug.h:9,
> from builtin-config.c:15:
> /git/linux/tools/perf/arch/s390/include/perf_regs.h:6:62: fatal error: ../../../../arch/s390/include/uapi/asm/perf_regs.h: No such file or directory
> compilation terminated.
> compilation terminated.
> mv: cannot stat '/tmp/build/perf/.builtin-config.o.tmp': No such file or directory
> /git/linux/tools/build/Makefile.build:96: recipe for target '/tmp/build/perf/builtin-config.o' failed
> make[3]: *** [/tmp/build/perf/builtin-config.o] Error 1
> make[3]: *** Waiting for unfinished jobs....
> mv: cannot stat '/tmp/build/perf/.builtin-annotate.o.tmp': No such file or directory
> /git/linux/tools/build/Makefile.build:96: recipe for target '/tmp/build/perf/builtin-annotate.o' failed
> make[3]: *** [/tmp/build/perf/builtin-annotate.o] Error 1
> CC /tmp/build/perf/plugin_mac80211.o
> CC /tmp/build/perf/plugin_sched_switch.o
> LD /tmp/build/perf/plugin_sched_switch-in.o
> LD /tmp/build/perf/plugin_mac80211-in.o
> LD /tmp/build/perf/plugin_kvm-in.o
> CC /tmp/build/perf/plugin_xen.o
> CC /tmp/build/perf/plugin_scsi.o
> CC /tmp/build/perf/plugin_function.o
> Makefile.perf:495: recipe for target '/tmp/build/perf/perf-in.o' failed
> make[2]: *** [/tmp/build/perf/perf-in.o] Error 2
> CC /tmp/build/perf/plugin_cfg80211.o
> LD /tmp/build/perf/plugin_xen-in.o
> LD /tmp/build/perf/plugin_function-in.o
> LINK /tmp/build/perf/plugin_jbd2.so
> LINK /tmp/build/perf/plugin_hrtimer.so
> LD /tmp/build/perf/plugin_scsi-in.o
> LINK /tmp/build/perf/plugin_kmem.so
> LINK /tmp/build/perf/plugin_kvm.so
> LD /tmp/build/perf/plugin_cfg80211-in.o
> LINK /tmp/build/perf/plugin_mac80211.so
> LINK /tmp/build/perf/plugin_sched_switch.so
> LINK /tmp/build/perf/plugin_function.so
> LINK /tmp/build/perf/plugin_xen.so
> LINK /tmp/build/perf/plugin_scsi.so
> LINK /tmp/build/perf/plugin_cfg80211.so
> Makefile.perf:209: recipe for target 'sub-make' failed
> make[1]: *** [sub-make] Error 2
> Makefile:69: recipe for target 'all' failed
> make: *** [all] Error 2
> make: Leaving directory '/git/linux/tools/perf'
> [root@jouet ubuntu]#
>

Maybe I miss something.

I just downloded the latest linux-4.15.0-rc3 and built the kernel and the perf tool on an s390x LPAR
without any errors:

[root@s35lp76 perf]# git tag|fgrep 4.15
v4.15-rc1
v4.15-rc2
v4.15-rc3
[root@s35lp76 perf]# pwd
/root/linux2/tools/perf
[root@s35lp76 perf]# make
BUILD: Doing 'make -j1' parallel build
Warning: Kernel ABI header at 'tools/include/uapi/linux/kvm.h' differs from latest version at 'include/uapi/linux/kvm.h'
Warning: Kernel ABI header at 'tools/arch/x86/include/asm/cpufeatures.h' differs from latest version at 'arch/x86/include/asm/cpufeatures.h'

Auto-detecting system features:
... dwarf: [ on ]
... dwarf_getlocations: [ on ]
... glibc: [ on ]
... gtk2: [ OFF ]
... libaudit: [ on ]
... libbfd: [ on ]
... libelf: [ on ]
... libnuma: [ on ]
... numa_num_possible_cpus: [ on ]
... libperl: [ on ]
... libpython: [ on ]
... libslang: [ on ]
... libcrypto: [ on ]
... libunwind: [ OFF ]
... libdw-dwarf-unwind: [ on ]
... zlib: [ on ]
... lzma: [ on ]
... get_cpuid: [ OFF ]
... bpf: [ on ]

Makefile.config:566: GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev
Makefile.config:817: No openjdk development package found, please install JDK package
[root@s35lp76 perf]#

The perf build went smoothly and when I type 'make'
again, the build process does not complain about missing files.

--
Thomas Richter, Dept 3303, IBM LTC Boeblingen Germany
--
Vorsitzende des Aufsichtsrats: Martina Koederitz
GeschÃftsfÃhrung: Dirk Wittkopp
Sitz der Gesellschaft: BÃblingen / Registergericht: Amtsgericht Stuttgart, HRB 243294