{"action":"created","issue":{"url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6900","labels_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6900/labels{/name}","comments_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6900/comments","events_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6900/events","html_url":"https://github.com/bitcoin/bitcoin/pull/6900","id":114001904,"number":6900,"title":"gitian: build on ubuntu 14.04","user":{"login":"laanwj","id":126646,"avatar_url":"https://avatars.githubusercontent.com/u/126646?v=3","gravatar_id":"","url":"https://api.github.com/users/laanwj","html_url":"https://github.com/laanwj","followers_url":"https://api.github.com/users/laanwj/followers","following_url":"https://api.github.com/users/laanwj/following{/other_user}","gists_url":"https://api.github.com/users/laanwj/gists{/gist_id}","starred_url":"https://api.github.com/users/laanwj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laanwj/subscriptions","organizations_url":"https://api.github.com/users/laanwj/orgs","repos_url":"https://api.github.com/users/laanwj/repos","events_url":"https://api.github.com/users/laanwj/events{/privacy}","received_events_url":"https://api.github.com/users/laanwj/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/bitcoin/bitcoin/labels/Build%20system","name":"Build system","color":"5319e7"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/bitcoin/bitcoin/milestones/19","html_url":"https://github.com/bitcoin/bitcoin/milestones/0.12.0","labels_url":"https://api.github.com/repos/bitcoin/bitcoin/milestones/19/labels","id":1092458,"number":19,"title":"0.12.0","description":"","creator":{"login":"laanwj","id":126646,"avatar_url":"https://avatars.githubusercontent.com/u/126646?v=3","gravatar_id":"","url":"https://api.github.com/users/laanwj","html_url":"https://github.com/laanwj","followers_url":"https://api.github.com/users/laanwj/followers","following_url":"https://api.github.com/users/laanwj/following{/other_user}","gists_url":"https://api.github.com/users/laanwj/gists{/gist_id}","starred_url":"https://api.github.com/users/laanwj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laanwj/subscriptions","organizations_url":"https://api.github.com/users/laanwj/orgs","repos_url":"https://api.github.com/users/laanwj/repos","events_url":"https://api.github.com/users/laanwj/events{/privacy}","received_events_url":"https://api.github.com/users/laanwj/received_events","type":"User","site_admin":false},"open_issues":12,"closed_issues":15,"state":"open","created_at":"2015-05-01T12:31:35Z","updated_at":"2015-11-18T21:21:22Z","due_on":null,"closed_at":null},"comments":26,"created_at":"2015-10-29T08:29:30Z","updated_at":"2015-11-19T08:13:04Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/bitcoin/bitcoin/pulls/6900","html_url":"https://github.com/bitcoin/bitcoin/pull/6900","diff_url":"https://github.com/bitcoin/bitcoin/pull/6900.diff","patch_url":"https://github.com/bitcoin/bitcoin/pull/6900.patch"},"body":"This changes the VM environment for gitian building to use Ubuntu 14.04 (Trusty).\r\n\r\n- Changes compiler version from GCC 4.6 to GCC 4.8, which makes #6211 (using the relevant subset of c++11) possible, and probably results in better code\r\n- Removes some 12.04 specific cruft from descriptors\r\n- The security and symbol checks pass (symbol check reports `clock_gettime`, but this is the same for old descriptors thus unrelated)\r\n-  Linux and OSX and Windows output is deterministic\r\n\r\nKnown problems:\r\n\r\n### ~~Windows build is not deterministic~~\r\n**SOLVED**\r\n\r\nEvery link, a few bytes in the executable near the end of `.rodata` are different. These are not a timestamp but apparently random.\r\n\r\nI spent some time tracking this down, eventually used a linker map to find that the bytes come from a ephermal object `ertr000001.o`. This helped trace this problem to the function `pe_create_runtime_relocator_reference` in `binutils/ld/pe-dll.c` which leaks a few bytes of heap to the executable by writing uninitialized data (!).\r\n\r\nThis sounds serious, however apparently this was already solved by the Erinn Clark of the Tor project in 2013: https://sourceware.org/bugzilla/show_bug.cgi?id=16192 . Awesome.\r\n\r\nUnfortunately Ubuntu hasn't included the new binutils in 14.04... @theuni any idea how to handle this? Tor, for a while, manually patched the bytes (well not manually I suppose - in a postprocessing step). Another option would be to use our own binutils, or use an even newer image (but that wouldn't be long term supported).\r\n"},"comment":{"url":"https://api.github.com/repos/bitcoin/bitcoin/issues/comments/157985554","html_url":"https://github.com/bitcoin/bitcoin/pull/6900#issuecomment-157985554","issue_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6900","id":157985554,"user":{"login":"jonasschnelli","id":178464,"avatar_url":"https://avatars.githubusercontent.com/u/178464?v=3","gravatar_id":"","url":"https://api.github.com/users/jonasschnelli","html_url":"https://github.com/jonasschnelli","followers_url":"https://api.github.com/users/jonasschnelli/followers","following_url":"https://api.github.com/users/jonasschnelli/following{/other_user}","gists_url":"https://api.github.com/users/jonasschnelli/gists{/gist_id}","starred_url":"https://api.github.com/users/jonasschnelli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonasschnelli/subscriptions","organizations_url":"https://api.github.com/users/jonasschnelli/orgs","repos_url":"https://api.github.com/users/jonasschnelli/repos","events_url":"https://api.github.com/users/jonasschnelli/events{/privacy}","received_events_url":"https://api.github.com/users/jonasschnelli/received_events","type":"User","site_admin":false},"created_at":"2015-11-19T08:13:04Z","updated_at":"2015-11-19T08:13:04Z","body":"Linux / OSX: **match**\r\n\r\nWindows: **no match** (https://bitcoin.jonasschnelli.ch/pulls/6900/bitcoin-win-0.12-build.assert)\r\nI used\r\n```\r\nb8affff612d645598a4642dcc4eef7d4974c02d73c31a99ba2faa36425142aca  bitcoin-win-0.12-desc.yml\r\ngit:b08293544a207088193de8834bb754f5d212c9bf bitcoin\r\n```\r\n\r\nAny ideas?"}}