Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 420209 - sys-auth/polkit fails to build with parallel make and/or distcc (libtool: link: cannot find the library `libpolkit-gobject-1.la' ...)
Summary: sys-auth/polkit fails to build with parallel make and/or distcc (libtool: lin...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Nirbheek Chauhan (RETIRED)
URL:
Whiteboard:
Keywords:
: 420513 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-06-08 08:37 UTC by Francesco Riosa
Modified: 2013-01-22 00:18 UTC (History)
7 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge--info.txt,7.77 KB, text/plain)
2012-06-08 08:37 UTC, Francesco Riosa
Details
failed build: sys-auth:polkit-0.106:20120608-084315.log (sys-auth:polkit-0.106:20120608-084315.log,24.44 KB, text/plain)
2012-06-08 08:50 UTC, Francesco Riosa
Details
successful build: sys-auth:polkit-0.106:20120608-084512.log (sys-auth:polkit-0.106:20120608-084512.log,64.84 KB, text/plain)
2012-06-08 08:51 UTC, Francesco Riosa
Details
Fix polkit-{gobject|agent}-1.la dependency being missing from GI targets (parallel_build.patch,1.32 KB, patch)
2012-08-22 05:34 UTC, Yang Zhao
Details | Diff
Fix polkit-{gobject|agent}-1.la dependency for GI targets (gir_build.patch,2.00 KB, patch)
2012-09-05 04:33 UTC, Yang Zhao
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Francesco Riosa 2012-06-08 08:37:49 UTC
Created attachment 314655 [details]
emerge --info

fail to build linking to a non-existant .la file.
also older versions are affected, cannot re-emerge sys-auth/polkit-0.105 which was already installed


  GISCAN Polkit-1.0.gir
libtool: link: cannot find the library `libpolkit-gobject-1.la' or unhandled argument `libpolkit-gobject-1.la'
linking of temporary binary failed: Command '['/bin/sh', '../../libtool', '--mode=link', '--tag=CC', '--silent', 'gcc', '-o', '/var/tmp/portage/sys-auth/polkit-0.106/work/polkit-0.106/src/polkit/tmp-introspect7dcinI/Polkit-1.0', '-export-dynamic', '-O2', '-march=corei7-avx', '-pipe', '-frecord-gcc-switches', '-mno-movbe', '-mno-abm', '-mno-lwp', '-mno-fma', '-mno-fma4', '-mno-xop', '-mno-bmi', '-mno-tbm', '--param', 'l1-cache-size=32', '--param', 'l1-cache-line-size=64', '--param', 'l2-cache-size=8192', '-mtune=corei7-avx', '-fgcse-after-reload', '-fpredictive-commoning', '-ftree-vectorize', '-funswitch-loops', '-fgraphite-identity', '-floop-block', '-floop-interchange', '-floop-strip-mine', '-ggdb', '-gdwarf-4', '-fvar-tracking-assignments', '-Wall', '-Wchar-subscripts', '-Wmissing-declarations', '-Wnested-externs', '-Wpointer-arith', '-Wcast-align', '-Wsign-compare', '-Wformat', '-Wformat-security', '/var/tmp/portage/sys-auth/polkit-0.106/work/polkit-0.106/src/polkit/tmp-introspect7dcinI/Polkit-1.0.o', '-L.', 'libpolkit-gobject-1.la', '-pthread', '-Wl,--export-dynamic', '-lgio-2.0', '-lgobject-2.0', '-lgthread-2.0', '-lgmodule-2.0', '-lrt', '-lglib-2.0']' returned non-zero exit status 1
make[4]: *** [Polkit-1.0.gir] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory `/var/tmp/portage/sys-auth/polkit-0.106/work/polkit-0.106/src/polkit'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/var/tmp/portage/sys-auth/polkit-0.106/work/polkit-0.106/src/polkit'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/sys-auth/polkit-0.106/work/polkit-0.106/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/sys-auth/polkit-0.106/work/polkit-0.106'
make: *** [all] Error 2
 * ERROR: sys-auth/polkit-0.106 failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=sys-auth/polkit-0.106'`,
 * the complete build log and the output of `emerge -pqv '=sys-auth/polkit-0.106'`.
 * The complete build log is located at '/var/log/portage/sys-auth:polkit-0.106:20120608-082722.log.gz'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/sys-auth/polkit-0.106/temp/build.log.gz'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-auth/polkit-0.106/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-auth/polkit-0.106/work/polkit-0.106'
 * S: '/var/tmp/portage/sys-auth/polkit-0.106/work/polkit-0.106'
Comment 1 Francesco Riosa 2012-06-08 08:48:50 UTC
uhu?
FEATURES='-fail-clean -sandbox -usersandbox' emerge -1 --nodeps sys-auth/polkit
does compile
Comment 2 Francesco Riosa 2012-06-08 08:50:15 UTC
Created attachment 314657 [details]
failed build: sys-auth:polkit-0.106:20120608-084315.log
Comment 3 Francesco Riosa 2012-06-08 08:51:13 UTC
Created attachment 314659 [details]
successful build: sys-auth:polkit-0.106:20120608-084512.log
Comment 4 Rafał Mużyło 2012-06-08 13:49:24 UTC
That log speaks for itself: parallel make failure.
It seems there's something not quite right with dependencies in one of Makefile.am.
Comment 5 Marek Bartosiewicz 2012-06-08 14:07:37 UTC
FEATURES="-distcc" solves this, but I consider that a workaround.
Comment 6 Wonko 2012-06-10 16:46:21 UTC
*** Bug 420513 has been marked as a duplicate of this bug. ***
Comment 7 Krzysiek Bielicki 2012-06-25 18:03:03 UTC
I'm not using distcc and MAKEOPTS="-j1" fixes this issue.
Comment 8 Gabriel Marcano 2012-07-02 17:58:11 UTC
I haven't tested much, but I did notice today that the emerge failed with the same issue as reported. Looking at previous comments, I disabled distcc (commented out the feature in /etc/make.conf), and it compiled fine, which is strange because right now distcc only compiles on localhost, and my MAKEOPTS is -j8. I don't think it's a problem with parallel building (at least in my case), but more of an issue with distcc (again, since without distcc it compiled with a high MAKEOPTS). Could this be perhaps a race condition?
Comment 9 Gabriel Marcano 2012-07-02 20:14:46 UTC
I noticed in portage there was a new polkit release, sys-auth/polkit-0.106-r7 (~amd64), and the problem is still present, and I can work around with by disabling distcc, as previously mentioned. MAKEOPTS is still -j8.
Comment 10 Samuli Suominen (RETIRED) gentoo-dev 2012-07-02 20:37:46 UTC
I believe we have already estabilished that there is a problem with either distcc and/or MAKEOPTS, so if you (the person reading this) don't have anything else to add here, please just don't
Comment 11 Raymond Jennings 2012-07-10 05:13:20 UTC
Same problem as before, but can we at least mark this bug as Confirmed?
Comment 12 Jimmy.Jazz 2012-07-13 21:26:45 UTC
FYI, I could resolve it by forcing the variables CC=gcc CCXX=gcc emerge ... with gcc 4.7.1

My FEATURES variable is as follows:
FEATURES='-ccache distcc userpriv usersandbox sandbox parallel-fetch userfetch collision-protect splitdebug compress-build-logs sfperms'
Comment 13 Quasimodo 2012-08-13 10:58:32 UTC
Same problem here, same solution also
Comment 14 Yang Zhao 2012-08-22 05:34:53 UTC
Created attachment 321912 [details, diff]
Fix polkit-{gobject|agent}-1.la dependency being missing from GI targets

src/polkit/Makefile.in and src/polkitagent/Makefile.in are missing dependency on polkit-gobject-1.la and polkit-agent-1.la, respectively, for their introspection targets.

From Makefile.introspection (installed by dev-libs/gobject-introspection) regarding $foo_gir_FILES:

  # Only dependencies we know are actually filenames goes into _FILES, make
  # sure these are built before running the scanner. Libraries and programs
  # needs to be added manually.


Patch attached.

Tested on x86 machine with `make -j12', as well as in distcc configuration with a cross-compiling amd64 participant using `make -j20'. Ran tests in each environment at least 4 times each.
Comment 15 Yang Zhao 2012-08-24 05:02:06 UTC
Upon a closer look the patch is most likely incorrect. I'll try poking some of the upstream lists to see what the correct way to inject this dependency is.
Comment 16 Samuli Suominen (RETIRED) gentoo-dev 2012-08-24 06:25:21 UTC
well, the patch should address Makefile.am instead of Makefile.in, for one...
Comment 17 Yang Zhao 2012-09-05 04:33:53 UTC
Created attachment 322954 [details, diff]
Fix polkit-{gobject|agent}-1.la dependency for GI targets

I got upstream to confirm the correct way to add the dependencies: https://mail.gnome.org/archives/gtk-devel-list/2012-September/msg00000.html

Attached patch updates the ebuild without revision bump and creates the necessary patch file.
Comment 18 Yang Zhao 2012-09-05 04:44:40 UTC
Upstream: https://bugs.freedesktop.org/show_bug.cgi?id=54525
Comment 19 Samuli Suominen (RETIRED) gentoo-dev 2012-11-22 13:25:22 UTC
(In reply to comment #18)
> Upstream: https://bugs.freedesktop.org/show_bug.cgi?id=54525

Duplicate of: https://bugs.freedesktop.org/show_bug.cgi?id=57077

This is fixed in 0.108
Comment 20 Rick Farina (Zero_Chaos) gentoo-dev 2013-01-13 17:30:44 UTC
(In reply to comment #19)
> (In reply to comment #18)
> > Upstream: https://bugs.freedesktop.org/show_bug.cgi?id=54525
> 
> Duplicate of: https://bugs.freedesktop.org/show_bug.cgi?id=57077
> 
> This is fixed in 0.108

Wouldn't this bug only be closed when 0.108 is stable? stable polkit is still KILLING me. can we please add a -j1 to the ebuild so I don't have to recover from EVERY emerge -e @world and EVERY catalyst livecd-stage1 run?  That would be awesome since right now I have to just run catalyst livecd-stage1 in a loop until polkit doesn't error....
Comment 21 Rick Farina (Zero_Chaos) gentoo-dev 2013-01-22 00:18:11 UTC
newer version stable, closing.

thanks