Re: [PATCH v4 00/14] Kbuild for perf

From: Alexis Berlemont
Date: Tue Oct 28 2014 - 19:57:08 EST


Jiri Olsa wrote:
> On Sun, Oct 26, 2014 at 12:20:25AM +0200, Alexis Berlemont wrote:
> > Hello,
> >
> > Here is a proposal of perf's build process managed by Kbuild:
> > * The file Makefile.perf is replaced by Makefile.kbuild
> > * Makefile.kbuild generates a default .config file if none exists
> > (allyesconfig)
> > * Makefile.kbuild adapts the .config file according to the
> > features-check tests results
> > * Makefile.kbuild builds external dependencies (linux/tools/lib/*)
> > * Makefile.kbuild leaves the rest to Kbuild
> >
> > Changes since v3:
> > * Patchs were generated starting from the following branch:
> > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git perf/core
> > * Add Kconfig options for 32-bit compatibility VDSOs
> > * Target build-test: for each .config-based test case, call "make
> > olddefconfig" so as to prevent failure because of new Kconfig
> > symbol(s)
>
> hi,
> I tried 'make clean && make' and got attached errors.
> I'm running Fedora 20 on x86_64
>

OK. I may have an idea. The parameters CONFIG_LIBDWARF_DIR and
CONFIG_LIBUNWIND_DIR are empty (default value). So the variable
LDFLAGS stored into .config-detected contains things like
"-L/lib" and your /lib directory contains 32bit binaries.

Could you send me the files .config and .config-detected which were
generated during the build?

I will send a new patch set.

* FYI, so far, I tested the build:
* on my archlinux x86_64 system
* and with many cross-toolchains (powerpc, arm, etc.) generated by
crosstool-ng

I should have tested on other distros especially fedora... Sorry.

Thank you very much for testing it!

Alexis.

> jirka
>
>
> ---
> BUILD: Doing 'make -j4' parallel build
> GEN tools/perf/PERF-VERSION-FILE
> make[3]: *** No rule to make target `kernelversion'. Stop.
> MKDIR libapi_dirs
> CC /home/jolsa/kernel.org/linux-perf/tools/lib/api/fs/fs.o
> CC /home/jolsa/kernel.org/linux-perf/tools/lib/api/fs/debugfs.o
> CC /home/jolsa/kernel.org/linux-perf/tools/lib/api/fd/array.o
> AR libapikfs.a
> LD tools/perf/arch/built-in.o
> LD tools/perf/built-in.o
> LD tools/perf/perf
> /bin/ld: skipping incompatible /lib/libpthread.so when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.a when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.so when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.a when searching for -lpthread
> /bin/ld: skipping incompatible /lib/librt.so when searching for -lrt
> /bin/ld: skipping incompatible /lib/librt.a when searching for -lrt
> /bin/ld: skipping incompatible /lib/librt.so when searching for -lrt
> /bin/ld: skipping incompatible /lib/librt.a when searching for -lrt
> /bin/ld: skipping incompatible /lib/libm.so when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.a when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.so when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.a when searching for -lm
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libresolv.so when searching for -lresolv
> /bin/ld: skipping incompatible /lib/libresolv.a when searching for -lresolv
> /bin/ld: skipping incompatible /lib/libresolv.so when searching for -lresolv
> /bin/ld: skipping incompatible /lib/libresolv.a when searching for -lresolv
> /bin/ld: skipping incompatible /lib/libnsl.so when searching for -lnsl
> /bin/ld: skipping incompatible /lib/libnsl.a when searching for -lnsl
> /bin/ld: skipping incompatible /lib/libnsl.so when searching for -lnsl
> /bin/ld: skipping incompatible /lib/libnsl.a when searching for -lnsl
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libm.so when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.a when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.so when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.a when searching for -lm
> /bin/ld: skipping incompatible /lib/libcrypt.so when searching for -lcrypt
> /bin/ld: skipping incompatible /lib/libcrypt.a when searching for -lcrypt
> /bin/ld: skipping incompatible /lib/libcrypt.so when searching for -lcrypt
> /bin/ld: skipping incompatible /lib/libcrypt.a when searching for -lcrypt
> /bin/ld: skipping incompatible /lib/libutil.so when searching for -lutil
> /bin/ld: skipping incompatible /lib/libutil.a when searching for -lutil
> /bin/ld: skipping incompatible /lib/libutil.so when searching for -lutil
> /bin/ld: skipping incompatible /lib/libutil.a when searching for -lutil
> /bin/ld: skipping incompatible /lib/libpthread.so when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.a when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.so when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.a when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libc.so when searching for -lc
> /bin/ld: skipping incompatible /lib/libc.a when searching for -lc
> /bin/ld: skipping incompatible /lib/libc.so when searching for -lc
> /bin/ld: skipping incompatible /lib/libc.a when searching for -lc
> /bin/ld: skipping incompatible /lib/libpthread.so when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.a when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.so when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libpthread.a when searching for -lpthread
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libutil.so when searching for -lutil
> /bin/ld: skipping incompatible /lib/libutil.a when searching for -lutil
> /bin/ld: skipping incompatible /lib/libutil.so when searching for -lutil
> /bin/ld: skipping incompatible /lib/libutil.a when searching for -lutil
> /bin/ld: skipping incompatible /lib/libm.so when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.a when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.so when searching for -lm
> /bin/ld: skipping incompatible /lib/libm.a when searching for -lm
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.so when searching for -ldl
> /bin/ld: skipping incompatible /lib/libdl.a when searching for -ldl
> /bin/ld: skipping incompatible /lib/libc.so when searching for -lc
> /bin/ld: skipping incompatible /lib/libc.a when searching for -lc
> /bin/ld: skipping incompatible /lib/libc.so when searching for -lc
> /bin/ld: skipping incompatible /lib/libc.a when searching for -lc
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/