Closed
Bug 1196595
Opened 10 years ago
Closed 10 years ago
Update the old emulator tooltool configs so it would install gtk3
Categories
(Release Engineering :: General, defect)
Release Engineering
General
Tracking
(blocking-b2g:2.5+)
RESOLVED
FIXED
| blocking-b2g | 2.5+ |
People
(Reporter: rickychien, Assigned: rickychien)
References
Details
Attachments
(1 file, 1 obsolete file)
|
5.07 KB,
patch
|
rickychien
:
review+
|
Details | Diff | Splinter Review |
According to https://bugzilla.mozilla.org/show_bug.cgi?id=1146713#c70, latest b2g desktop depends on gtk3 for some reasons (see also bug 1189125) that break gaia build if we try to upgrade b2g to 43.0a1.
A proper fix is we should install gtk libs on build machines.
Flags: needinfo?(jopsen)
| Assignee | ||
Comment 1•10 years ago
|
||
I need TC folks's feedbacks since that blocks bug 1146713.
Flags: needinfo?(mshal)
Comment 2•10 years ago
|
||
We install gtk3 using tooltool - it's not on the build machines by default. See for example:
https://dxr.mozilla.org/mozilla-central/source/browser/config/tooltool-manifests/linux64/releng.manifest#13
Flags: needinfo?(mshal)
| Assignee | ||
Comment 3•10 years ago
|
||
(In reply to Michael Shal [:mshal] from comment #2)
> We install gtk3 using tooltool - it's not on the build machines by default.
> See for example:
>
> https://dxr.mozilla.org/mozilla-central/source/browser/config/tooltool-
> manifests/linux64/releng.manifest#13
ok, so do you know who can let it install on the build machines by default? It's an urgent 2.5 blocker.
Flags: needinfo?(mshal)
Comment 4•10 years ago
|
||
I'm not sure I understand - why can't you add gtk3.tar.xz to the relevant tooltool manifest?
Flags: needinfo?(mshal)
| Assignee | ||
Comment 5•10 years ago
|
||
I'm not familiar with b2g or gecko stuffs. I think it's proper to ask releng for help.
Flags: needinfo?(jlund)
| Assignee | ||
Updated•10 years ago
|
Component: General → General Automation
Product: Taskcluster → Release Engineering
QA Contact: catlee
| Assignee | ||
Updated•10 years ago
|
Severity: normal → blocker
Comment 6•10 years ago
|
||
Can you point me to a build log on treeherder that this is affecting? From bug 1146713 it sounds like this is for B2G Desktop, but gtk3 should already be installed for those builds from the tooltool manifest:
https://dxr.mozilla.org/mozilla-central/source/b2g/config/tooltool-manifests/linux64/releng.manifest#13
Flags: needinfo?(rchien)
| Assignee | ||
Comment 7•10 years ago
|
||
Here https://treeherder.mozilla.org/#/jobs?repo=b2g-inbound&revision=d255da3b284c
And I saw this message:
home/worker/workspace/gaia/b2g_sdk/43.0a1-2015-08-17-15-02-06/b2g/xpcshell: error while loading shared libraries: libgtk-3.so.0: cannot open shared object file: No such file or directory
it probably relate to gtk3
Flags: needinfo?(rchien)
| Assignee | ||
Comment 8•10 years ago
|
||
Comment 9•10 years ago
|
||
From that log you can see that gtk3 is installed:
INFO - File gtk3.tar.xz fetched from https://api.pub.build.mozilla.org/tooltool/ as /home/worker/workspace/gecko/tmpKTIKLf
...
INFO - untarring "gtk3.tar.xz"
We probably just need to setup LD_LIBRARY_PATH to point to $topsrcdir/gtk3/usr/local/lib when running xpcshell. :glandium, do you have a recommendation here?
Flags: needinfo?(mh+mozilla)
Flags: needinfo?(jopsen)
Flags: needinfo?(jlund)
Comment 10•10 years ago
|
||
changing priority so we stop getting alerts in #buildduty
Severity: blocker → major
Comment 12•10 years ago
|
||
Invoke from command line from Make
https://github.com/mozilla-b2g/gaia/blob/master/build/common.mk#L20-L24
Flags: needinfo?(mh+mozilla)
Comment 13•10 years ago
|
||
This is not invoked recursively from the gecko build system is it?
Flags: needinfo?(mh+mozilla)
Comment 15•10 years ago
|
||
I would like to change the severity back to "blocker" since this bug impacts B2G Emulator KK and many codes on 2.5 cannot be tested now.
Severity: major → blocker
Comment 16•10 years ago
|
||
Then you have to set the right variables on your own. LD_LIBRARY_PATH should be enough.
Flags: needinfo?(mh+mozilla)
Comment 17•10 years ago
|
||
In a releng bug component, the severity blocker on an unassigned bug means it produces alerts all the time.
Component: General Automation → General
Product: Release Engineering → Firefox OS
QA Contact: catlee
Summary: Support gtk libs on build machines → b2g build system's invocation of xpcshell fails to find gtk libs on build machines
Comment 18•10 years ago
|
||
(In reply to Mike Hommey [:glandium] from comment #16)
> Then you have to set the right variables on your own. LD_LIBRARY_PATH should
> be enough.
Just to be on the safe side: if this is really necessary, we should think of some way to carry that variable from Gecko build system to Gaia, not hardcode it...
Comment 19•10 years ago
|
||
(In reply to Phil Ringnalda (:philor) from comment #17)
> In a releng bug component, the severity blocker on an unassigned bug means
> it produces alerts all the time.
Thanks for this info and the help to change the component.
| Assignee | ||
Comment 21•10 years ago
|
||
I think LD_LIBRARY_PATH should depend on user's machine. Is it possible to set LD_LIBRARY_PATH from buildbot script, not hardcode it from gecko or gaia?
Flags: needinfo?(mh+mozilla)
| Assignee | ||
Comment 22•10 years ago
|
||
Problem of LD_LIBRARY_PATH we ran into didn't happened on local machine, it happened on treeherder only. So we need your help for setting an appropriate ENVs on build machine.
| Assignee | ||
Comment 24•10 years ago
|
||
Gregory, do you know what's the best way to setup LD_LIBRARY_PATH for b2g desktop build?
Flags: needinfo?(gps)
| Assignee | ||
Comment 25•10 years ago
|
||
:glandium, would you mind taking this bug? thanks :)
Flags: needinfo?(mh+mozilla)
Comment 26•10 years ago
|
||
I can't take this bug. I know nothing of those builds. You obviously have gtk3 pulled from tooltool, so it's there, somewhere, wherever tooltool is run from. Set LD_LIBRARY_PATH to that_path/gtk3/usr/local/lib from wherever it makes sense in the build (the TC script, the wrapper script if there is one, gaia build system...)
Flags: needinfo?(mh+mozilla)
Comment 27•10 years ago
|
||
Essentially, I'm repeating comment 9.
Comment 28•10 years ago
|
||
Ricky, isn't the issue at [1] ?
[1] https://github.com/mozilla-b2g/gaia/blob/a8a462ab783a5bbab508d3c29483cff260672e3c/Makefile#L340
Maybe you can replace:
XULRUNNERSDK := LD_LIBRARY_PATH="$(dir $(XPCSHELLSDK))"
by
XULRUNNERSDK := LD_LIBRARY_PATH="$(dir $(XPCSHELLSDK)):$(LD_LIBRARY_PATH)"
(or anything that makes it work)
Flags: needinfo?(rchien)
Comment 29•10 years ago
|
||
Note, you don't want a trailing : when LD_LIBRARY_PATH is empty.
| Assignee | ||
Comment 30•10 years ago
|
||
If it means LD_LIBRARY_PATH has already set from buildbot or TC machine, I can export it to Gaia build system. I hope that it will work.
Thank you Julien, I'll try it later.
Flags: needinfo?(rchien)
| Assignee | ||
Comment 31•10 years ago
|
||
Try status
https://treeherder.mozilla.org/#/jobs?repo=try&revision=e46de7e4ff61
still don't know why there are lots of test suites broke
/usr/local/lib/node_modules/taskcluster-vcs/build/bin/tc-vcs.js:57
throw err;
^
Error: Error running command: git clone https://github.com/rickychien/gaia /home/worker/gaia
at Error (<anonymous>)
at run$ (/usr/local/lib/node_modules/taskcluster-vcs/build/run.js:122:15)
at tryCatch (/usr/local/lib/node_modules/taskcluster-vcs/node_modules/6to5/node_modules/regenerator-6to5/runtime.js:53:40)
at GeneratorFunctionPrototype.invoke (/usr/local/lib/node_modules/taskcluster-vcs/node_modules/6to5/node_modules/regenerator-6to5/runtime.js:209:22)
at tryCatch (/usr/local/lib/node_modules/taskcluster-vcs/node_modules/6to5/node_modules/regenerator-6to5/runtime.js:53:40)
at Function.step (/usr/local/lib/node_modules/taskcluster-vcs/node_modules/6to5/node_modules/regenerator-6to5/runtime.js:103:22)
at /usr/local/lib/node_modules/taskcluster-vcs/node_modules/6to5/node_modules/core-js/shim.js:1283:41
at /usr/local/lib/node_modules/taskcluster-vcs/node_modules/6to5/node_modules/core-js/shim.js:1293:10
at process._tickCallback (node.js:442:13)
It seems to relate to task-cluster modules...
| Assignee | ||
Comment 32•10 years ago
|
||
Push to try again
https://treeherder.mozilla.org/#/jobs?repo=try&revision=9bfcfde85581
Comment 35•10 years ago
|
||
Thanks for taking care of this!
| Assignee | ||
Comment 36•10 years ago
|
||
Patch was landed in https://bugzilla.mozilla.org/show_bug.cgi?id=1146713#c86 but it was backed out for similar failures as last time.
Here is my patch https://github.com/mozilla-b2g/gaia/commit/61385bf8a2063f256b546ea5dffb90a53c12876c
I wonder why this patch passed on try but failed on b2g-inbound, it was not supposed to happen.
Mike, do you have any idea?
| Assignee | ||
Comment 37•10 years ago
|
||
| Assignee | ||
Comment 38•10 years ago
|
||
Pushed to try again: https://treeherder.mozilla.org/#/jobs?repo=try&revision=eb03b7d2208d without applying XULRUNNERSDK := LD_LIBRARY_PATH="$(dir $(XPCSHELLSDK)):$(LD_LIBRARY_PATH)" and I expect it will throw gtk failures as same as on b2g-inbound.
| Assignee | ||
Updated•10 years ago
|
Flags: needinfo?(mh+mozilla)
| Assignee | ||
Comment 39•10 years ago
|
||
Compare with my first patch and second patch, result of B2G Desktop Linux x64 on b2g-inbound is definitely different, see also
First patch:
https://treeherder.mozilla.org/#/jobs?repo=b2g-inbound&revision=d255da3b284c
Second patch:
https://treeherder.mozilla.org/#/jobs?repo=b2g-inbound&revision=cfb6e4519984
I don't see any libgtk-3.so errors throw on B2G Desktop Linux x64 in second patch, so I guess that issue is still machine related.
Comment 40•10 years ago
|
||
Without the command lines appearing in the logs, I can't tell anything.
Flags: needinfo?(mh+mozilla)
| Assignee | ||
Comment 41•10 years ago
|
||
I don't understand why you can't see command lines in the logs. Just click on raw log button
first patch:
https://s3-us-west-2.amazonaws.com/taskcluster-public-artifacts/7bCnRLKrROyf1imOn3Tilg/0/public/logs/live_backing.log
it threw this error: libgtk-3.so.0: cannot open shared object file
second patch:
https://s3-us-west-2.amazonaws.com/taskcluster-public-artifacts/gwJIZoMaSaSLihCrvyYZEw/0/public/logs/live_backing.log
it passed without failures
Flags: needinfo?(mh+mozilla)
Comment 42•10 years ago
|
||
(In reply to Ricky Chien [:rickychien] from comment #41)
> I don't understand why you can't see command lines in the logs. Just click
> on raw log button
There is no command line running xpcshell with LD_LIBRARY_PATH in the log. There is a test -f /path/to/xpcshell, and then the error.
Flags: needinfo?(mh+mozilla)
Comment 43•10 years ago
|
||
Yep because all xpcshell invocations are well hidden in the Makefile (using $(shell)) and as a result we don't see them in the output.
I agree that the builds on B2K Desktop look good now. Is it possible that the image builds machine actually miss GTK3 ? I don't see the same commands about "tooltool" in their logs.
See http://ftp.mozilla.org/pub/mozilla.org/b2g/tinderbox-builds/b2g-inbound-emulator/1440641647/b2g_b2g-inbound_emulator_dep-bm72-build1-build129.txt.gz
(we can see this one ^ installs gtk2)
See https://s3-us-west-2.amazonaws.com/taskcluster-public-artifacts/cNbzvtQnR6avb8mxqilRYA/0/public/logs/live_backing.log
(I don't see any tooltool invocaton on this one).
So I'd say _these_ build environments don't have GTK3, and that Ricky patch is OK.
Comment 44•10 years ago
|
||
Both logs in comment 41 have tooltool running and pulling/installing gtk3.tar.xz.
Comment 45•10 years ago
|
||
I checked the log with Ricky and we found the LD_LIBRARY_PATH is set on the commend-line itself when calling |./build.sh|, not exported to the shell. We would need to carry that from gaia/Android.mk and Ricky is doing exactly that right now.
Comment 46•10 years ago
|
||
The way B2G build system and Gaia build script are called is very confusing, I hope we could improve that *someday*.
Comment 47•10 years ago
|
||
Mike, logs in comment 41 are not the ones failing with the current patch from Ricky.
Logs in comment 41 show the effect from his patch on the same build -- that works now.
(I agree it was not the best to show the current situation)
Comment 48•10 years ago
|
||
Here is what we should do per IRC conversation with Julien:
1. On taskcluster VMs like [1] we have gtk3 installed, but Gaia have failed to consume LD_LIBRARY_PATH from B2G build system. Ricky need to produce a patch to do that on bug 1146713.
2. On ICS Emulator old buildbot VMs we have only gtk2 installed via apt-get [2]. We need releng to install gtk3 on these machine too.
[1] https://s3-us-west-2.amazonaws.com/taskcluster-public-artifacts/B5lGXwVXQ5OW9gatMw0LZA/0/public/logs/live_backing.log
[2] http://ftp.mozilla.org/pub/mozilla.org/b2g/tinderbox-builds/b2g-inbound-emulator/1440641647/b2g_b2g-inbound_emulator_dep-bm72-build1-build129.txt.gz
Switching this bug over to releng again.
Assignee: rchien → nobody
Status: ASSIGNED → NEW
Component: General → General Automation
Product: Firefox OS → Release Engineering
QA Contact: catlee
Comment 49•10 years ago
|
||
(In reply to Tim Guan-tin Chien [:timdream] (slow response; please ni? to queue) from comment #48)
> Here is what we should do per IRC conversation with Julien:
>
> 1. On taskcluster VMs like [1] we have gtk3 installed, but Gaia have failed
> to consume LD_LIBRARY_PATH from B2G build system. Ricky need to produce a
> patch to do that on bug 1146713.
If gtk3 is installed at the OS level, then LD_LIBRARY_PATH is not needed.
> 2. On ICS Emulator old buildbot VMs we have only gtk2 installed via apt-get
> [2]. We need releng to install gtk3 on these machine too.
Buildbot slaves use a Centos 6 environment to build. There are no gtk3 packages for that, and that's why we have a tooltool package in the first place.
Comment 50•10 years ago
|
||
(In reply to Mike Hommey [:glandium] from comment #49)
> Buildbot slaves use a Centos 6 environment to build. There are no gtk3
> packages for that, and that's why we have a tooltool package in the first
> place.
And that's why you need LD_LIBRARY_PATH to be set with the gtk3 path from the tooltool unpack.
Comment 51•10 years ago
|
||
(In reply to Mike Hommey [:glandium] from comment #49)
> (In reply to Tim Guan-tin Chien [:timdream] (slow response; please ni? to
> queue) from comment #48)
> > Here is what we should do per IRC conversation with Julien:
> >
> > 1. On taskcluster VMs like [1] we have gtk3 installed, but Gaia have failed
> > to consume LD_LIBRARY_PATH from B2G build system. Ricky need to produce a
> > patch to do that on bug 1146713.
>
> If gtk3 is installed at the OS level, then LD_LIBRARY_PATH is not needed.
>
Just to reaffirm, gtk3 is not installed at the OS level in either TC nor builtbots; it's only available from tooltool.
Updated•10 years ago
|
Summary: b2g build system's invocation of xpcshell fails to find gtk libs on build machines → buildbot VMs need gtk3
Updated•10 years ago
|
Summary: buildbot VMs need gtk3 → Update the old emulator tooltool configs so it would install gtk3
| Assignee | ||
Comment 52•10 years ago
|
||
| Assignee | ||
Updated•10 years ago
|
Attachment #8653367 -
Flags: review?(mh+mozilla)
| Assignee | ||
Comment 53•10 years ago
|
||
Push to try:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=503e0fa6c835
and I saw gtk3 appeared on B2G ICS Emulator from above link.
Comment 54•10 years ago
|
||
glandium answered the releng needs with https://bugzilla.mozilla.org/show_bug.cgi?id=1196595#c49 and c#50 --> not a blocker
Severity: blocker → normal
Updated•10 years ago
|
Attachment #8653367 -
Attachment is patch: true
Comment 55•10 years ago
|
||
Comment on attachment 8653367 [details] [diff] [review]
Add gtk3.tar.xz in emulator
Review of attachment 8653367 [details] [diff] [review]:
-----------------------------------------------------------------
::: b2g/config/emulator/releng-emulator.tt
@@ +10,5 @@
> +"size": 12057960,
> +"digest": "6105d6432943141cffb40020dc5ba3a793650bdeb3af9bd5e56d3796c5f03df9962a73e521646cd71fbfb5e266c1e74716ad722fb6055589dfb7d35175bca89e",
> +"algorithm": "sha512",
> +"filename": "gtk3.tar.xz",
> +"setup": "setup.sh",
You can remove the setup line from all these. That's not relevant for the emulator builds (and currently doesn't do anything anyways).
Attachment #8653367 -
Flags: review?(mh+mozilla) → review+
| Assignee | ||
Comment 56•10 years ago
|
||
Attachment #8653367 -
Attachment is obsolete: true
Attachment #8653931 -
Flags: review+
Attachment #8653931 -
Flags: checked-in?
| Assignee | ||
Updated•10 years ago
|
Assignee: nobody → rchien
Status: NEW → ASSIGNED
Updated•10 years ago
|
Keywords: checkin-needed
| Assignee | ||
Updated•10 years ago
|
Attachment #8653931 -
Flags: checked-in?
| Assignee | ||
Comment 57•10 years ago
|
||
Ryan, could you help me check-in that patch? thanks
Flags: needinfo?(ryanvm)
Updated•10 years ago
|
Attachment #8653931 -
Attachment is patch: true
Flags: needinfo?(ryanvm)
Comment 58•10 years ago
|
||
Please fix your hg config so that patches are generated with all of the necessary commit information.
Comment 59•10 years ago
|
||
Keywords: checkin-needed
| Assignee | ||
Updated•10 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Comment 60•10 years ago
|
||
Updated•7 years ago
|
Component: General Automation → General
You need to log in
before you can comment on or make changes to this bug.
Description
•