IRC logs for #buildstream for Tuesday, 2017-02-14

*** tristan has joined #buildstream04:48
*** ChanServ sets mode: +o tristan04:48
ironfootMorning09:08
ironfootI'll leave this log here just in case is useful: https://paste.gnome.org/potdglye609:09
ironfootLeaving the following status09:13
ironfoothttps://paste.gnome.org/pqoq623vl09:14
tristanironfoot, did you really get past ./setup.py ?09:24
ironfootI.... I promise09:24
ironfootI'll do it again just in case09:25
tristanthe checkout_at error looks familiar09:25
tristanLike you dont have >= v2016.8 of ostree09:25
tristanoh wait no it's something else seems09:25
ironfootostree 2016.1509:26
tristancheckout_at doesnt exist before that09:26
tristanso what you are seeing is in fact the artifact cache failing to fire a more useful error (or handling the situation well) .. I think... lemme double check09:26
* tristan notes he had to change libstdc++ -> libstdcxx ... because ostree is picky about it's ref names09:27
tristanalthough the proper fix would probably be to have the artifact cache normalize names it wants to use as refs09:27
tristanno, it's not that that is happening09:28
tristanhmm, well clearly I have to chase the exceptions down09:28
tristanironfoot, ok I'll have to look deeper, there are 2 problems here, a.) the build is failing to detect an error (falling into artifact cache code when there is nothing to archive it seems), and b.) the ldconfig is carried over from a build time dependency *it seems* (not sure about that)09:30
* tristan thinks if he nukes his artifact cache it will reproduce09:31
ironfootright, I was goint to start debuging the ldconfig case09:31
* tristan moves cache out of the way and runs a build09:33
* tristan immediately adds bst entry point09:34
*** juergbi has quit IRC09:34
*** juergbi has joined #buildstream09:36
tristanfwiw, in master you can use the `bst` command instead of the tab-completion-unfriendly `build-stream`09:39
* tristan lets some time pass before yanking / removing the `build-stream` entry point09:39
ironfoottristan: would be checking for `bwrap --version` in setup.py a sensible thing to do to check that it's installed?09:40
tristanironfoot, we currently just use shutil.which() for other host tools... not very elaborate but I think it's fine09:42
ironfootright, will do that09:42
ironfoot(failed to spot that yesterday)09:43
tristanok so I'm already building stage1-binutils09:43
tristan(that means the ostree import must have been pretty lightning fast !)09:44
tristancouple of gig download09:44
* tristan wonders if ostree is bleeding outside of the artifact cache09:45
* tristan palmface09:48
tristanof course ! it's not only the artifact cache I need to remove to reproduce well... well... lets try it that way09:49
tristan(it's the source caches which hold all those downloads though)09:49
ironfooti think you can keep those09:50
ironfoot(for this test, I mean)09:50
tristanyeah I suspect so09:51
*** ssam2 has joined #buildstream10:07
tristanironfoot, found the issue I think...10:08
ironfoot:)10:11
tristanironfoot, I added the integration commands after I built it seems, and I still have to add those to the cache keys10:14
tristanthat should be a good cut-off point for adding the cache key test10:14
* tristan pushes fix10:15
ironfootgreat!10:16
tristanironfoot, https://gitlab.com/tristanvb/buildstream-tests/commit/142b3d5a6d71d1b28674cb3c76c1328c9dc14ab910:18
tristantook a moment10:18
tristanironfoot, ummm, that failed... please reapply without using buildstream from it's setup.py10:24
tristanjust shutils.which() directly (at some point *after* the python >= 3.5 check)10:24
ironfootyep, I wondered if that was a bad idea or not10:24
tristanits generally a bad idea, and somehow caused tests to fail10:25
tristanhmmm, ok that's damn weird, how did ruamel not exist I dont know10:26
ironfoot"""Successfully built 1 elements in pipeline with target 'build-essential/linux-api-headers.bst'"""10:29
ironfootfix worked10:29
tristanyep10:30
tristanThere is still a hidden bst bug under that to investigate10:30
ironfoottests fail locally for me for another reason: https://paste.gnome.org/paw0fcs3a10:54
* ironfoot digs10:54
tristantests have a race currently... did you run it twice in a row ?10:58
* tristan inspects log10:58
tristanironfoot, hmmm, perhaps you've stumbled on our lower bound bwrap dependency ?10:59
ironfootyes, twice, some minutes in between.10:59
tristanno usually I think only one fails, why did the sandbox tests pass the previous round ??11:00
tristanand fail on the second ?11:00
* tristan also normally runs with --addopts -x11:01
tristanso maybe I only get to see the first error11:01
ironfootI'll forget about the tests issue right now. Just trying to finish building build-essential11:23
ironfootSo, there is an issue I think I have to raise. If you see this status, "build-essential" says "cached" even though "gcc" failed : https://paste.gnome.org/pgehahrnx11:27
ironfootI could see the same thing before, when ldconfig was failing to run, but missed the last line in the paste11:27
ironfootwhich was like this: https://paste.gnome.org/ptu9uygxt11:28
tristanoh ?11:36
tristanhmm11:36
tristangcc ?11:37
tristanah11:37
tristanbuild-essential stack looks cached11:37
tristanironfoot, right, thats related to the above hehe :)11:37
tristan<tristan> ironfoot, I added the integration commands after I built it seems, and I still have to add those to the cache keys11:38
tristan<tristan> that should be a good cut-off point for adding the cache key test11:38
tristanironfoot, that ^^^11:38
tristanI think, or is it11:38
tristanhmmm11:38
tristanmaybe not, am I missing environments ? I shouldnt be11:38
tristanironfoot, in the middle of other things :-/ I'll have to investigate... how did this occur ?11:40
ironfootso, what I'm saying right now, is that build-essential is cached when it shouldn't be11:40
tristanironfoot, that was... "build failure of HEAD^1 in build-essential" + "bst show of HEAD" ?11:41
tristanRight, I got that, it shouldnt be if it depends on something which needs to be built11:41
ironfootthat was, "build failure of HEAD^1 + bst show of HEAD^1"11:42
ironfootto get:  https://paste.gnome.org/ptu9uygxt11:42
tristanAh11:42
tristanironfoot, Ok then that is related to the second problem we encountered... notice that things kept trying to build after ldconfig fails11:43
tristanironfoot, that probably means that a build-essential stack was actually assembled and cached (Which cant really fail)11:43
tristanat least, that's a very good working theory11:44
tristanI'll have to retry / debug with HEAD^1 of build-essential to fix the other issue11:44
*** csoriano____ has joined #buildstream12:39
*** csoriano____ is now known as csoriano12:44
*** tristan has quit IRC13:07
*** tristan has joined #buildstream14:11
*** ChanServ sets mode: +o tristan14:12
*** jjardon has quit IRC14:41
*** tristan has quit IRC14:44
*** tristan has joined #buildstream14:47
*** tristan has quit IRC14:47
*** tristan has joined #buildstream14:48
*** ChanServ sets mode: +o tristan14:48
*** jjardon has joined #buildstream14:49
ironfootso, this is the problem I was having before with gcc: https://paste.gnome.org/pdeakqjsi15:21
*** csoriano has quit IRC15:40
tristanironfoot, wat ?!15:55
tristanironfoot, you mean it DIDNT compile ?15:55
* ironfoot looks up from a hole15:55
ironfootyes, compilation problems. Something is missing somewhre15:56
tristanheh, deep in a config.log hole ?15:56
tristanok did you try zapping ~/buildstream/artifacts and rebuilding ? not sure it would make a difference but after that bug earlier on, maybe something stale and incorrect in the cache ?15:56
tristanironfoot, what can you tell me about the environment, it's an x86_64 host I take it ?15:57
ironfootyes, my laptop, inside a docker container15:57
tristanOh15:57
tristanno wait15:57
tristanOk something is up, and I really dont understand why, but I'm sure I've solved this before15:58
ironfootright, will try cleaning the artifacts15:58
tristanironfoot, I let the build run and didnt look at the result, I have the failure here too15:58
tristanno no15:58
tristanyou have the exact thing I have, dont waste your breathe :)15:58
ironfootoh, well15:59
ironfootI'm somehow happy :)15:59
ironfootI've seen in some places the mention of "LD_LIBRARY_PATH" to fix the error16:00
tristan -> /buildstream/build/o/./gcc/cc1: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory16:01
* tristan originally did build essential one chunk at a time16:01
tristanand then possibly I changes smth and ended up breaking it :-/16:01
tristanso... ldconfig runs before building gcc16:02
tristanbut16:02
tristanis libz.so there, and... is the ld.so.conf listing the right directories16:02
tristanoh and, it's ldconfig from stage two, in /tools/sbin16:02
tristanso *that* ldconfig might not be configured to even use the same ld.so.cache16:03
ironfootso, PATH should put /tools at the end?16:03
tristannah16:03
tristanhold on16:03
tristanironfoot, maybe yeah :)16:05
tristanheh16:05
tristanironfoot, yeah you're right it must be16:06
* tristan just compared the baserock build-essential, it should be the same16:06
tristanironfoot, I think one difference is that ybd does '/sbin/ldconfig' while we trust PATH16:06
tristanironfoot, of course a goal is that build-essential has as little differences from baserock as possible (just a goal to ensure migrations generally run smoothly)16:08
* tristan is running another build with tools on the other end of the PATH16:08
* tristan thinks its a really bad time to be 'sleeping at the wheel' while working on another project for the week... but that project is important too :)16:09
ironfootI'm trying a build using LD_LIBRARY_PATH, to see what happens16:10
ironfootbut I think that makes sense to have /tools at the end in stage3 things16:11
tristanthat might help but I'd rather it didnt, my build is also running...16:11
* tristan hopes the path fixes it just cause it's same as baserock16:12
tristanyep16:12
tristanironfoot, that fixed16:12
tristanpath16:12
ironfootkewl16:12
tristangood catch :)16:12
ironfoottook me a while to see anything in that log16:13
tristanyeah well, it's gcc that has multi configures, and you dont get to see what happens without opening config.log in the build sandbox16:13
* tristan also has to add that useful line pointing to the build directory16:13
tristanbut, had not added it yet, also; I wanted to automatically pause stuff and `bst shell` into the broken build dir16:14
tristanall easy stuff to do... that I didnt do yet :-S16:14
ironfootyay, LD_LIBRARY_PATH works too. Meaning that I know something else today :)16:18
ironfoots/know/learnt/16:19
tristanyeah it would, however I'm uncertain about what the result is after that16:19
tristani.e. the linked gcc binary, where will it expect to find libz.so16:19
ironfootyeah, some errors in build-essential won't be visible until we try to build more things on top16:19
tristanprobably works either way, so long as there is no -rpath actually16:19
ironfootare you already working on a script to import from definitions.git?16:46
tristanironfoot, I started it before yeah but got interrupted17:38
tristanironfoot, let me push a work in progress, but it's really in progress heh17:39
tristanironfoot, https://gitlab.com/tristanvb/defs2bst17:41
tristanit reads the output of ybd for a given target and walks that, but it's only got the flow basically, the meat needs to be filled in17:42
*** ssam2 has quit IRC18:54
*** tristan has quit IRC20:50

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!