Should make it possible to run the resulting GUI executable on Linux distributions that use Qt 4.6, such as Debian Wheezy and Tails. Builds a mini-SDK for building against Qt 4.6. This includes the headers as well as host utilities such as `lrelease`, `qrc` and `moc`. This speeds up the gitian build a bit - libqt4-dev pulled in a lot of packages, and is no longer needed as this provides a replacement of our own. Note: This does not replace the Qt build with at static library. After this commit we still build dynamically against the system Qt library. The only difference is that compatibility with an older version is maintained. This loses minor GUI functionality (such as setPlaceholderText) but still allows integration into the window management of the host OS, unlike when statically linking. Conflicts: doc/release-process.md
Setting up Gitian on a VM using LXC
If your main machine is a 64-bit Mac or PC with a few gigabytes of memory
and at least 10 gigabytes of free disk space, you can gitian-build using
LXC running inside a virtual machine (VirtualBox, VMware, probably others too).
Here's a description of Gavin's setup on OSX 10.6:
-
Download and install VirtualBox from https://www.virtualbox.org/
-
Download the 64-bit Ubuntu Desktop 12.04 LTS .iso CD image from http://www.ubuntu.com/
-
Run VirtualBox and create a new virtual machine, using the Ubuntu .iso (see the VirtualBox documentation for details). Create it with at least 2 gigabytes of memory and a disk that is at least 50 gigabytes big.
-
Inside the running Ubuntu desktop, install:
sudo apt-get install debootstrap lxc ruby apache2 git apt-cacher-ng python-vm-builder
-
Still inside Ubuntu, tell gitian-builder to use LXC, then follow the instructions below:
export USE_LXC=1
Sanity check:
sudo service apt-cacher-ng status # Should return apt-cacher-ng is running
Enable bridging interface for networking:
sudo brctl addbr br0
sudo ifconfig br0 10.0.2.2/24 up
Once you've got the right hardware and software:
git clone git://github.com/dogecoin/dogecoin.git
git clone git://github.com/devrandom/gitian-builder.git
Prepare the builder VMs:
cd gitian-builder
bin/make-base-vm --lxc --suite precise --arch i386
bin/make-base-vm --lxc --suite precise --arch amd64
cd ..
Now follow the build process under doc/release-process to first build the dependecies (one time task, or when the dependencies change) and then the client packages.