Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1306002
| From | "Wangnan (F)" <wangnan0@huawei.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 1/6] perf tools: Add -lutil in python lib list for broken python-config |
| Date | 2016-01-11 11:00 +0100 |
| Message-ID | <qPHqA-yo-43@gated-at.bofh.it> (permalink) |
| References | <qOGdc-7Wi-13@gated-at.bofh.it> <qOGdc-7Wi-11@gated-at.bofh.it> <qPGXw-mu-11@gated-at.bofh.it> <qPHgS-v6-33@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 2016/1/11 17:44, Wangnan (F) wrote: > > > On 2016/1/11 17:28, Jiri Olsa wrote: >> 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 my python-config: > > # python-config > -lpthread -ldl -lpthread -lutil -lm -lpython2.7 > > There are multiple -lpthread already. In fact multiple '-l' options is > not > a problem at all. Please see below. > >>> 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? > > Please check man page of ld: > > <quote> > --start-group archives --end-group > The archives should be a list of archive files. They may be either > explicit file names, or -l options. > > The specified archives are searched repeatedly until no new > undefined references are created. Normally, an archive is searched > only once in the order that it is specified on the command line. If a > symbol in that archive is needed to resolve an undefined symbol > referred to by an object in an archive that appears later on the > command line, the linker would not be able to resolve that reference. > By grouping the archives, they all be searched repeatedly until all > possible references are resolved. > > Using this option has a significant performance cost. It is best > to use it only when there are unavoidable circular references between > two or more archives. > </quote> > > Without --start/end-group, if we provide -l in this order: > > ... -la -lb -lc ... > > and libb.a requires a symbol in liba.a, link would fail. The simplest way > to avoid this is to add another -la after -lb: > > ... -la -lb -la -lc ... > > In my environment it works as if we don't provide -Wl,--start-group > and -Wl,--end-group. > I don't know why. > I mean the python case before I add -lutil after python libs. -Wl,--start-group and -Wl,--end-group seems not work for me. They are issued, I confirm this in strace output. Thank you. > Thank you.
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 1/6] perf tools: Add -lutil in python lib list for broken python-config Wang Nan <wangnan0@huawei.com> - 2016-01-08 15:30 +0100
Re: [PATCH 1/6] perf tools: Add -lutil in python lib list for broken python-config Jiri Olsa <jolsa@redhat.com> - 2016-01-11 10:30 +0100
Re: [PATCH 1/6] perf tools: Add -lutil in python lib list for broken python-config "Wangnan (F)" <wangnan0@huawei.com> - 2016-01-11 10:50 +0100
Re: [PATCH 1/6] perf tools: Add -lutil in python lib list for broken python-config "Wangnan (F)" <wangnan0@huawei.com> - 2016-01-11 11:00 +0100
Re: [PATCH 1/6] perf tools: Add -lutil in python lib list for broken python-config Jiri Olsa <jolsa@redhat.com> - 2016-01-12 10:50 +0100
csiph-web