Post
Topic
Board Bitcoin Technical Support
Merits 2 from 1 user
Re: BTC Reward. How to compile Electrum standalone executable from Python source cod
by
HCP
on 29/06/2020, 06:11:30 UTC
⭐ Merited by ETFbitcoin (2)
You don't need to clone it from github again.
You can definitely use your downloaded (and extracted) .tar.gz.
...
You can keep the rest as it is.
Just make sure that your extracted archive is in the folder "electrum" as it would be when cloning the repository directly and you are fine to go.
Sadly, this doesn't appear to work as one might expect...

Firstly, when attempting to build the docker image, it struggles with the git version:



If we modify the Dockerfile to use the current git version(1:2.17.1-1ubuntu0.7), then the docker image build goes ok:



However, during the building of the binaries using docker with this command:
Code:
$ sudo docker run -it \
    --name electrum-wine-builder-cont \
    -v $PWD:/opt/wine64/drive_c/electrum \
    --rm \
    --workdir /opt/wine64/drive_c/electrum/contrib/build-wine \
    electrum-wine-builder-img \
    ./build.sh

It will stop with an error saying that it can't find a git repo Undecided



If you then create an "empty" git repo using "git init", and have the .tar.gz files extracted to it... we get a slightly different git error...



So, then we try "git add" and "git commit" etc to create a local version of the repo... it will still error out as it can't seem to deal with the 'locale' files during the build and creates a "*" folder instead of the actual proper locale folders Undecided





which then causes this failure:



I even tried manually downloading the locale files and extracting them into the correct location, and it still errors out. Undecided



However, if you simply do ONE initial "git clone" from the Electrum github repo, all problems will disappear and the build process works flawlessly...


build the docker image:


checkout 3.3.8:


build the binaries:




So, either the 3.3.8 "tag" release .tar.gz on github is missing some critical files... or there is something in the Docker build image that absolutely requires that you have cloned from the github repo to work properly Undecided Anyone have any ideas? Huh

In the meantime, I'll continuing experimenting to see if I can work around the "locale" error...