Gitian builds no longer deterministic #13731

issue Fuzzbawls opened this issue on July 21, 2018
  1. Fuzzbawls commented at 1:50 PM on July 21, 2018: contributor

    After the merge of #12971, gitian builds are no longer producing deterministic binaries/packages for any build that includes the Qt GUI front-end.

    This is due to a semi-recent change to Qt's rcc tool that embeds any input file's last modified time into it's resulting output (src/qt/qrc_bitcoin_locale.cpp in this case). Since the build system dynamically generates the translation locale .qm files at build time, the resulting qt_libbitcoinqt_a-qrc_bitcoin_locale.o is never deterministic.

    Here is a comparison of some recent master branch gitian builds:

    Run 1:

    c7270b97ec1457acc5802ad60e8b9a2319b462d2109ec4191c83e0871d2b8322  bitcoin-0.16.99-aarch64-linux-gnu-debug.tar.gz
    227f958ce4e68f72ecc950c186f88cf53561be640ab6def5f48bdcb48e3d42db  bitcoin-0.16.99-aarch64-linux-gnu.tar.gz
    a8de05932cba825f66a9390bd029b852e8a5d4b77712f3b1612a61c619abdfc3  bitcoin-0.16.99-arm-linux-gnueabihf-debug.tar.gz
    4c4a8064ab99b3ff9c1eba9302239f2d88847467bdcdb789adbd4154414f034b  bitcoin-0.16.99-arm-linux-gnueabihf.tar.gz
    aec0618497ff5f6d34f3c3e0d652e46dda6371b1186a800fb89156a6c5c00d96  bitcoin-0.16.99-i686-pc-linux-gnu-debug.tar.gz
    d6b664b35dd0e77e16f65545e5a690e56b3fb381804edb516e747c7eb17f5a27  bitcoin-0.16.99-i686-pc-linux-gnu.tar.gz
    80bd22bdc4f0dc8f72f09cb17cece23484957e31a7a7dc8a070497a36700b6ad  bitcoin-0.16.99-x86_64-linux-gnu-debug.tar.gz
    d288019698fa2fb027c808f27f3f9a63aaef9aff353da74eb09be1c614d8a880  bitcoin-0.16.99-x86_64-linux-gnu.tar.gz
    4e2a441838213ecae35db1824e05a23e7f026f0b3fbf144460c4735d6ab41c21  src/bitcoin-0.16.99.tar.gz
    543193a2ca8dadf582dc1f3af47bae52ba8f2a8604f3b64140fe40853e1c0063  bitcoin-linux-0.17-res.yml
    
    cc27376dd3c55b0a2596b5d7d85c352ebf572bdfdeec6b3d33be8e4e4b77df09  bitcoin-0.16.99-win-unsigned.tar.gz
    9dafad0dad4d4a77ad60f0c1f545aeabf88fa7a3a5c73cc6b849ef474af9a888  bitcoin-0.16.99-win32-debug.zip
    9f7ffb4caedcf2015dede00f1f8c74e2c0949b55869597807738736d2858d31b  bitcoin-0.16.99-win32-setup-unsigned.exe
    528292fc66ef2aa2944de9b89af669029141671ef6d823b8a485b5bc7a159881  bitcoin-0.16.99-win32.zip
    18f7169d56a798df9a117eed001b73d25dbdcf3a9c0e2611eabb324c50cb4edc  bitcoin-0.16.99-win64-debug.zip
    702edd07ef957bfb316cf80ca5ef0d9fcd22dfc3ae15dd615522ace6a2d13266  bitcoin-0.16.99-win64-setup-unsigned.exe
    e2f0a004773c2745f7289f7f2afb33a1bd1d1d47d0fc3a69c38bed1686597fb6  bitcoin-0.16.99-win64.zip
    0bf23ac04ca0b4866293306bdd2639d23947ca333a0ffa14625aa33ab718f9a3  src/bitcoin-0.16.99.tar.gz
    982efe98d1221572201cae35008f8cac4163e7a3b896249b89e4449abce192bc  bitcoin-win-0.17-res.yml
    
    0efe1c0e036678732f7b8d4c2829587f338663d68b1a5eedac6d3601e3f386d8  bitcoin-0.16.99-osx-unsigned.dmg
    86881a72a3795149fb94ebe7bc28caa8979ed33b470b8a36a1cda315de8e7fe8  bitcoin-0.16.99-osx-unsigned.tar.gz
    4d7cca92ec8ee4bdbaafffe4c182bbff81070d1a8b575741cb805118035c9301  bitcoin-0.16.99-osx64.tar.gz
    4e2a441838213ecae35db1824e05a23e7f026f0b3fbf144460c4735d6ab41c21  src/bitcoin-0.16.99.tar.gz
    df18dba7e9c8803ea8d803114a86dcab36f3fe6de27afe56ae4280e58ccb772a  bitcoin-osx-0.17-res.yml
    

    Run 2:

    c7270b97ec1457acc5802ad60e8b9a2319b462d2109ec4191c83e0871d2b8322  bitcoin-0.16.99-aarch64-linux-gnu-debug.tar.gz
    227f958ce4e68f72ecc950c186f88cf53561be640ab6def5f48bdcb48e3d42db  bitcoin-0.16.99-aarch64-linux-gnu.tar.gz
    3dce6a11640462d1dd6eb4fd81cce72f039624402d6bc87a52ff04e88013dee1  bitcoin-0.16.99-arm-linux-gnueabihf-debug.tar.gz
    049e59a8d01add4686752f66c926f0b99da86a09240250c4aa794d3a112c665c  bitcoin-0.16.99-arm-linux-gnueabihf.tar.gz
    4d80143e06882292da6d8cf6f36c430fcabbc0bf78a8134f57dfd570dbe3817f  bitcoin-0.16.99-i686-pc-linux-gnu-debug.tar.gz
    475702c7fe1c9aa93b25e91e85c25ee5151c70886f3ebae7dab48b846393cad6  bitcoin-0.16.99-i686-pc-linux-gnu.tar.gz
    54027c60d704cfaa078f60115aecb5b733e102260a643c87c2bd671d5fceefda  bitcoin-0.16.99-x86_64-linux-gnu-debug.tar.gz
    56df0a3bd628bed319faac3131290642ba16edae78b82c5a635ba74cf6eb2b72  bitcoin-0.16.99-x86_64-linux-gnu.tar.gz
    4e2a441838213ecae35db1824e05a23e7f026f0b3fbf144460c4735d6ab41c21  src/bitcoin-0.16.99.tar.gz
    868847616c91849bd8fb3e22ffbee3296756d9333315ae5804769e6334ef8dc0  bitcoin-linux-0.17-res.yml
    
    9fa81924675890294072d8ef82339ebd9b759f9f8a243c5ba34edabb462e99ac  bitcoin-0.16.99-win-unsigned.tar.gz
    9dafad0dad4d4a77ad60f0c1f545aeabf88fa7a3a5c73cc6b849ef474af9a888  bitcoin-0.16.99-win32-debug.zip
    9ded631625b6efddb779a5bd4ba5fd64ebc5d424251d180d36f25992defbb777  bitcoin-0.16.99-win32-setup-unsigned.exe
    e2483927f3303c07f3dbe446b9228bf6d10dccbeb28df762ddbf74df5bb99245  bitcoin-0.16.99-win32.zip
    18f7169d56a798df9a117eed001b73d25dbdcf3a9c0e2611eabb324c50cb4edc  bitcoin-0.16.99-win64-debug.zip
    88d9a6e40d60fe96a601b304634f70bfd1c3792e73ac88019bbfc0fd56971423  bitcoin-0.16.99-win64-setup-unsigned.exe
    3774aae37404866ebfe628bec65d3bae8ab5e26d1396383083d493a16cd7e6ab  bitcoin-0.16.99-win64.zip
    0bf23ac04ca0b4866293306bdd2639d23947ca333a0ffa14625aa33ab718f9a3  src/bitcoin-0.16.99.tar.gz
    138d69f87962902a125426c6a3eb38e91f27cdd7e721bc96809adb87b0a64280  bitcoin-win-0.17-res.yml
    
    0efe1c0e036678732f7b8d4c2829587f338663d68b1a5eedac6d3601e3f386d8  bitcoin-0.16.99-osx-unsigned.dmg
    86881a72a3795149fb94ebe7bc28caa8979ed33b470b8a36a1cda315de8e7fe8  bitcoin-0.16.99-osx-unsigned.tar.gz
    4d7cca92ec8ee4bdbaafffe4c182bbff81070d1a8b575741cb805118035c9301  bitcoin-0.16.99-osx64.tar.gz
    4e2a441838213ecae35db1824e05a23e7f026f0b3fbf144460c4735d6ab41c21  src/bitcoin-0.16.99.tar.gz
    df18dba7e9c8803ea8d803114a86dcab36f3fe6de27afe56ae4280e58ccb772a  bitcoin-osx-0.17-res.yml
    

    Between the two runs, the only resulting binary package with the same sha256sum is the aarch64 tarballs...which do not currently bundle bitcoin-qt in them.

  2. fanquake added the label Build system on Jul 21, 2018
  3. fanquake added this to the milestone 0.17.0 on Jul 22, 2018
  4. MarcoFalke closed this on Jul 29, 2018

  5. MarcoFalke referenced this in commit e8ffec69f7 on Jul 29, 2018
  6. PastaPastaPasta referenced this in commit 746cb90cb7 on Jul 29, 2020
  7. DrahtBot locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-17 09:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me