Re: [PATCH 1/6] perf tools: Add -lutil in python lib list for broken python-config

From: Jiri Olsa
Date: Mon Jan 11 2016 - 04:28:50 EST


On Fri, Jan 08, 2016 at 02:23:56PM +0000, Wang Nan wrote:
> On some system the perf-config is broken, causes link failure like this:
>
> /usr/lib64/python2.7/config/libpython2.7.a(posixmodule.o): In function `posix_forkpty':
> /opt/wangnan/yocto-build/tmp-eglibc/work/x86_64-oe-linux/python/2.7.3-r0.3.1/Python-2.7.3/./Modules/posixmodule.c:3816: undefined reference to `forkpty'
> /usr/lib64/python2.7/config/libpython2.7.a(posixmodule.o): In function `posix_openpty':
> /opt/wangnan/yocto-build/tmp-eglibc/work/x86_64-oe-linux/python/2.7.3-r0.3.1/Python-2.7.3/./Modules/posixmodule.c:3756: undefined reference to `openpty'
> collect2: error: ld returned 1 exit status
> make[1]: *** [/home/wangnan/kernel-hydrogen/tools/perf/out/perf] Error 1
> make: *** [all] Error 2
>
> $ python-config --libs
> -lpthread -ldl -lpthread -lutil -lm -lpython2.7

so your 'python-config --libs' shows -lutil and you still get the build failure?

after your fix I can see double -lutil in PYTHON_EMBED_LIBADD,
which is probably not a problem but could be ommited I think

>
> In this case a '-lutil' should be appended to -lpython2.7.
>
> (I know we have --start-group and --end-group. I can see them in
> command line of collect2 by strace. However it doesn't work. Seems
> I have a broken environment?)

hum, how is this related to start/end -group options?

thanks,
jirka