Delete obsolete wiki pages:
- Build-Bitcoind-on-Microsoft-Windows.md - Deprecated-MSWin-Installation.md - Install-MMGen-and-Its-Dependencies-on-Microsoft-Windows.md - Install-MMGen-and-Its-Dependencies-on-Windows-XP.md - Install-MMGen-on-Debian-or-Ubuntu-Linux.md - Install-MinGW-64-and-MSYS-on-Microsoft-Windows.md - Install-MinGW-and-MSYS-on-Windows-XP.md - Required-MSYS-Archives.md - Required-MinGW-Archives.md
parent
20e59d160c
commit
f9c3c20724
9 changed files with 0 additions and 777 deletions
|
|
@ -1,144 +0,0 @@
|
|||
#### Note: the following instructions are **out of date** and of purely historical interest. They apply to an older version of Bitcoin Core patched for watch-only addresses before watch-only support was officially released. Instead of attempting to build from source, Windows users are now advised to install a prebuilt Bitcoin Core binary from bitcoin.org.
|
||||
|
||||
##### Note: If during the compilation process you get "Missing Disk" pop-up error messages and have a card reader installed, you should temporarily disconnect your card reader.
|
||||
|
||||
##### Note: The following instructions assume you'll be unpacking all archives to `C:\`, the root directory on most Windows installations. If you choose to unpack to another location, the `cd` commands must be adjusted accordingly.
|
||||
|
||||
#### 1. Build OpenSSL
|
||||
|
||||
Note: Skip this step if you already built OpenSSL in Step 2 of [**Install MMGen
|
||||
and Its Dependencies**][07].
|
||||
|
||||
Grab the [latest tarball][08] from the [openssl.org download page][09] and unpack
|
||||
it. At the MSYS prompt, run:
|
||||
|
||||
$ cd /c/openssl-1.0.1g
|
||||
$ ./config --openssldir=/usr
|
||||
$ make
|
||||
$ make install
|
||||
|
||||
#### 2. Build the Berkeley Database (v5.0):
|
||||
|
||||
Grab the [v5.0 tarball][01], or browse the [download page][02] for other
|
||||
versions (avoid v4.8, which has issues with Windows; versions newer than 5.0
|
||||
may work, but they're untested by the author). Unpack the archive and run
|
||||
the following at the MSYS prompt:
|
||||
|
||||
$ cd /c/db-5.0.32/build_unix
|
||||
$ ../dist/configure --enable-mingw --enable-cxx --disable-replication --prefix=/usr
|
||||
|
||||
Open the source file `db.h` in your editor. Change the statement on line 116:
|
||||
|
||||
typedef pthread_t db_threadid_t;
|
||||
|
||||
to read:
|
||||
|
||||
typedef u_int32_t db_threadid_t;
|
||||
|
||||
**Note:** since `db.h` is created by `configure`, this must be done **after**
|
||||
`configure` is run.
|
||||
|
||||
Save the file and run `make` and `make install`.
|
||||
|
||||
#### 3. Install the MASM assembler (optional but recommended):
|
||||
|
||||
Get the file [MASMsetup.exe][03] from the Microsoft website. With a tool
|
||||
like 7zip, open the cab file inside and the file inside it, which begins with
|
||||
`FL_ml_exe*`. Copy this file to your path, renaming it to `ml.exe`.
|
||||
|
||||
#### 4. Build the Boost libraries:
|
||||
|
||||
Get the boost [tarball][04] from sourceforge and unpack it. At the DOS prompt,
|
||||
run:
|
||||
|
||||
cd \boost_1_55_0
|
||||
boostrap.bat
|
||||
bjam toolset=gcc link=static threading=single --build-type=minimal stage --with-system --with-filesystem --with-program_options --with-chrono --with-test
|
||||
bjam toolset=gcc link=static threading=multi --build-type=minimal stage --with-thread
|
||||
|
||||
These commands build just the few libraries you need, avoiding the
|
||||
time-consuming process of compiling the whole boost package.
|
||||
|
||||
#### 5. Build Bitcoind:
|
||||
|
||||
Download Sipa's watchonly bitcoind [zip archive][05] (commit #a13f1e8 [[check][]])
|
||||
from GitHub and unpack it. At the MSYS prompt, run:
|
||||
|
||||
$ cd /c/bitcoin-watchonly
|
||||
|
||||
Make the following edits to `src/leveldb/Makefile`:
|
||||
|
||||
> After the the statement `include build_config.mk`, add the following line:
|
||||
|
||||
SOURCES=$(shell echo db/*.cc util/*.cc table/*.cc)
|
||||
|
||||
> Change the line:
|
||||
|
||||
LIBOBJECTS = $(SOURCES:.cc=.o)
|
||||
|
||||
> to read:
|
||||
|
||||
LIBOBJECTS = $(SOURCES:.cc=.o) port/port_win.o
|
||||
|
||||
> Change the line:
|
||||
|
||||
all: $(SHARED) $(LIBRARY)
|
||||
|
||||
> to read:
|
||||
|
||||
all: $(LIBRARY)
|
||||
|
||||
Edit the following files,
|
||||
|
||||
src/rpcdump.cpp
|
||||
src/rpcnet.cpp
|
||||
src/rpcwallet.cpp
|
||||
src/wallet.cpp
|
||||
src/walletdb.cpp
|
||||
|
||||
adding the line `#include <winsock2.h>` near the top of each file, above
|
||||
the first `#include` statement.
|
||||
|
||||
At the MSYS prompt, run the following commands (this needs to be done just
|
||||
once):
|
||||
|
||||
$ cp /mingw/bin/autoreconf-2.68 /mingw/bin/autoreconf
|
||||
$ cp /mingw/bin/autoconf-2.68 /mingw/bin/autoconf
|
||||
$ cp /mingw/bin/automake-1.11 /mingw/bin/automake
|
||||
$ cp /mingw/bin/aclocal-1.11 /mingw/bin/aclocal
|
||||
$ cp /bin/true.exe /bin/hexdump.exe
|
||||
|
||||
Generate the `configure` script:
|
||||
|
||||
$ sh autogen.sh
|
||||
|
||||
Edit the just-created `configure` script, adding the line:
|
||||
|
||||
CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
|
||||
|
||||
after the line:
|
||||
|
||||
LIBS="$LIBS $BOOST_LIBS $BOOST_CHRONO_LIB"
|
||||
|
||||
From the prompt, run `configure` and `make` with the arguments provided below:
|
||||
|
||||
$ ./configure --without-qt --with-incompatible-bdb CPPFLAGS=-I/usr/include LDFLAGS="-static -L/usr/lib -Wl,--allow-multiple-definition" BOOST_ROOT=/c/boost_1_55_0
|
||||
$ make src/bitcoind.exe
|
||||
|
||||
Strip the executable (`strip src/bitcoind.exe`), copy it to your path and test
|
||||
that the command `bitcoind` works. You may want to use the `-datadir` option to
|
||||
point to the planned location of your `bitcoin.conf` file, wallet and blockchain.
|
||||
Of these files, the only one you need to create is `bitcoind.conf`. If this file
|
||||
or its required user and password and lines are missing, `bitcoind` will exit
|
||||
with an error message instructing you how to create it.
|
||||
|
||||
[01]: http://download.oracle.com/berkeley-db/db-5.0.32.tar.gz
|
||||
[02]: http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/downloads/index-082944.html
|
||||
[03]: http://www.microsoft.com/en-gb/download/details.aspx?id=12654
|
||||
[04]: http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz/download
|
||||
[05]: https://codeload.github.com/sipa/bitcoin/zip/watchonly
|
||||
[06]: http://www.boost.org/users/download/
|
||||
[check]: https://github.com/sipa/bitcoin/tree/watchonly
|
||||
[07]: Install-MMGen-and-Its-Dependencies-on-Microsoft-Windows
|
||||
[08]: http://www.openssl.org/source/openssl-1.0.1g.tar.gz
|
||||
[09]: http://www.openssl.org/source/
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
***NOTE: these deprecated MSWin installation instructions are provided for
|
||||
informational purposes only. They require an [older version][ov] of MMGen which
|
||||
lacks many current features such as Subwallets and Ethereum support. Use at
|
||||
your own risk!***
|
||||
|
||||
### Install MMGen under MinGW-64 (Windows 7 and later) (DEPRECATED)
|
||||
|
||||
Complete these three steps:
|
||||
|
||||
> 1. Install [MinGW-64 and MSYS][01], if you haven't already;
|
||||
> 2. Install [MMGen's dependencies][02] (excluding the bitcoin daemons) and MMGen itself; and
|
||||
> 3. [Install the offline and online bitcoin daemons (bitcoind)][07]. Note that
|
||||
Bitcoin Core v0.16.3 or older must be used. More recent versions of the
|
||||
Core daemon will not work.
|
||||
|
||||
### Install MMGen under MSYS (Windows XP) (DEPRECATED)
|
||||
|
||||
***Windows XP warning: MMGen is no longer officially supported on Windows XP due
|
||||
to incompatibilities with the Crypto.Random module. The scripts run, but the
|
||||
security of your random numbers cannot be guaranteed. Use at your own risk.***
|
||||
|
||||
Complete these three steps:
|
||||
|
||||
> 1. Install [MinGW and MSYS][03], if you haven't already;
|
||||
> 2. Install [MMGen's dependencies][04] (excluding the bitcoin daemons) and MMGen itself; and
|
||||
> 3. [Install the offline and online bitcoin daemons (bitcoind)][07]. Note that
|
||||
Bitcoin Core v0.16.3 or older must be used. More recent versions of the
|
||||
Core daemon will not work.
|
||||
|
||||
### Using MMGen
|
||||
|
||||
When your installation is complete, proceed to [**Getting Started with MMGen**][08].
|
||||
|
||||
[01]: Install-MinGW-64-and-MSYS-on-Microsoft-Windows
|
||||
[02]: Install-MMGen-and-Its-Dependencies-on-Microsoft-Windows
|
||||
[03]: Install-MinGW-and-MSYS-on-Windows-XP
|
||||
[04]: Install-MMGen-and-Its-Dependencies-on-Windows-XP
|
||||
[07]: Install-Bitcoind
|
||||
[08]: Getting-Started-with-MMGen
|
||||
[ov]: https://github.com/mmgen/mmgen/releases/tag/v0.9.8
|
||||
|
|
@ -1,218 +0,0 @@
|
|||
***Warning: though the MMGen installation process on Windows has become easier,
|
||||
it still requires patience, and the user experience is less than optimal.
|
||||
You're urged to use the prebuilt [MMGenLive][20] USB image instead. It's now
|
||||
the preferred way for all non-Linux users to run MMGen.***
|
||||
|
||||
### 1. Create the build directory:
|
||||
|
||||
Enter your MSYS environment, create the directory `/build` and move to it.
|
||||
This is where you'll be unpacking and building archives:
|
||||
|
||||
$ mkdir /build
|
||||
$ cd /build
|
||||
|
||||
If the machine you're installing on is online, you can download the various
|
||||
tarballs and zipped archives you need from the Internet exactly as described in
|
||||
the instructions below. If you're offline, you'll need to download them first
|
||||
on another machine and then transfer them to the install computer using a USB
|
||||
stick, for example.
|
||||
|
||||
In either case, you'll probably be downloading the archives to a folder
|
||||
somewhere outside the root of your MSYS filesystem. To access it within MSYS,
|
||||
use `/c/` for drive `C:`, `/d/` for drive `D:` and so forth. A full path to an
|
||||
archive would thus look something like this:
|
||||
`/c/my_downloaded_archives/archive_name.tar.gz`.
|
||||
|
||||
### 2. Build OpenSSL:
|
||||
|
||||
Grab the v1.0.x [tarball][06] from openssl.org, unpack and build:
|
||||
|
||||
$ tar -xzf <path to openssl archive>/openssl-1.0.2j.tar.gz
|
||||
$ cd openssl-1.0.2j
|
||||
$ ./Configure mingw64 --openssldir=/usr
|
||||
$ make
|
||||
$ make install
|
||||
|
||||
### 3. Build the Scrypt Python module:
|
||||
|
||||
The latest scrypt tarball available from [Python][07] at this writing
|
||||
(scrypt-0.8.0.tar.gz) has missing files and doesn't build, so grab the latest
|
||||
[zipfile][07z] from the scrypt source repository, unzip and build:
|
||||
|
||||
$ cd /build
|
||||
$ unzip <path to scrypt archive>/91d194b6a6bd.zip
|
||||
$ cd mhallin-py-scrypt-91d194b6a6bd
|
||||
|
||||
Open the file `setup.py` in your text editor. Change the line reading
|
||||
|
||||
from setuptools import setup, Extension
|
||||
|
||||
to read
|
||||
|
||||
from distutils.core import setup, Extension
|
||||
|
||||
Right before the line beginning with
|
||||
|
||||
scrypt_module = Extension(
|
||||
|
||||
add the following lines (with no indentation):
|
||||
|
||||
library_dirs = [r'c:\mingw64\x86_64-w4-mingw32\lib','/msys/lib']
|
||||
includes = [r'c:\msys\include']
|
||||
|
||||
Save `setup.py`, build and install:
|
||||
|
||||
$ python setup.py build --compiler=mingw32
|
||||
$ python setup.py install
|
||||
|
||||
Now, to solve a problem with the interpreter not finding the scrypt extension
|
||||
module, we have to do this little fixup:
|
||||
|
||||
$ cd /mingw/opt/lib/python2.7/site-packages
|
||||
$ unzip scrypt*.egg
|
||||
|
||||
### 4. Build the pycrypto Python module:
|
||||
|
||||
Download the latest pycrypto [tarball][02] from the Python website and unpack it:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to pycrypto archive>/pycrypto-2.6.1.tar.gz
|
||||
$ cd pycrypto-2.6.1
|
||||
|
||||
Open the file `setup.py` in your text editor. Remove *exactly* four spaces at
|
||||
the beginning of this line:
|
||||
|
||||
self.__remove_extensions(["CryptoPublicKey._fastmath"])
|
||||
|
||||
to move it one level of indentation to the left. Save the file and exit the
|
||||
editor. Now build and install:
|
||||
|
||||
$ python setup.py build --compiler=mingw32
|
||||
$ python setup.py install
|
||||
|
||||
### 5. Install the ecdsa Python module:
|
||||
|
||||
Grab the latest python-ecdsa [tarball][03], unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to ecdsa archive>/ecdsa-0.13.tar.gz
|
||||
$ cd ecdsa-0.13
|
||||
$ python setup.py install
|
||||
|
||||
### 6. Install the ed25519ll Python module (required for Monero address generation):
|
||||
|
||||
Grab the latest ed25519ll [tarball][43], unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to ed25519ll archive>/ed25519ll-0.6.tar.gz
|
||||
$ cd ed25519ll-0.6
|
||||
|
||||
Open the file `setup.py` in your text editor. Change the line reading
|
||||
|
||||
plat_name = get_platform().replace('-', '_')
|
||||
|
||||
to read
|
||||
|
||||
plat_name = 'win64'
|
||||
|
||||
Exit the editor and run:
|
||||
|
||||
$ python setup.py install
|
||||
|
||||
### 7. Install the pysha3 Python module (required for Monero and Ethereum address generation):
|
||||
|
||||
Grab the latest pysha3 [tarball][44], unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to pysha3 archive>/pysha3-1.0.2.tar.gz
|
||||
$ cd pysha3-1.0.2
|
||||
$ python setup.py install
|
||||
|
||||
### 8. Install the colorama Python module:
|
||||
|
||||
Grab the latest colorama [tarball][14], unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to colorama archive>/colorama-0.3.7.tar.gz
|
||||
$ cd colorama-0.3.7
|
||||
$ python setup.py install
|
||||
|
||||
### 9. Install the pexpect Python module (needed for test suite):
|
||||
|
||||
Grab the latest pexpect [tarball][15], unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to pexpect archive>/pexpect-4.2.1.tar.gz
|
||||
$ cd pexpect-4.2.1
|
||||
$ python setup.py install
|
||||
|
||||
### 10. Install sdelete utility (needed for secure wallet deletion):
|
||||
|
||||
Grab the latest SDelete [zip archive][16], unzip and copy `sdelete.exe` to
|
||||
your execution path (`c:\windows`, for example).
|
||||
|
||||
### 11. Build libsecp256k1:
|
||||
|
||||
Libsecp256k1 requires GNU autotools to build, and they're not included in the
|
||||
MinGW-64 distribution for some reason, so you'll have to retrieve and unpack
|
||||
them yourself. You'll need these archives:
|
||||
|
||||
> * [autoconf][31]
|
||||
> * [automake][32]
|
||||
> * [libtool][33]
|
||||
|
||||
Unpack them in your /mingw directory and fix up some filenames:
|
||||
|
||||
$ cd /mingw
|
||||
$ tar -xzf <path to>/autoconf2.5-2.68-1-mingw32-bin.tar.lzma
|
||||
$ tar -xzf <path to>/automake1.11-1.11.1-1-mingw32-bin.tar.lzma
|
||||
$ tar -xzf <path to>/libtool-2.4-1-mingw32-bin.tar.lzma
|
||||
$ cd bin
|
||||
$ cp autoconf-* autoconf
|
||||
$ cp automake-* automake
|
||||
$ cp aclocal-* aclocal
|
||||
$ cp autoreconf-* autoreconf
|
||||
|
||||
Now get the latest libsecp256k1 [zip archive][11] from GitHub, unpack, build and
|
||||
install:
|
||||
|
||||
$ cd /build
|
||||
$ unzip.exe <path to libsecp256k1 archive>/master.zip
|
||||
$ cd secp256k1-master
|
||||
$ ./autogen.sh
|
||||
$ ./configure
|
||||
$ make
|
||||
$ make install
|
||||
|
||||
### 12. Install MMGen:
|
||||
|
||||
Get the [zip archive][10] of the latest stable version from GitHub, unpack and install:
|
||||
|
||||
$ cd /build
|
||||
$ unzip.exe <path to mmgen archive>/stable_mingw.zip
|
||||
$ cd mmgen-stable_mingw
|
||||
$ python setup.py build --compiler=mingw32
|
||||
$ sudo ./setup.py install
|
||||
|
||||
After first installing and starting the [Bitcoin daemon][77], you may then run
|
||||
the MMGen test suite to make sure your installation's working:
|
||||
|
||||
$ test/test.py -s
|
||||
|
||||
[02]: https://pypi.python.org/packages/60/db/645aa9af249f059cc3a368b118de33889219e0362141e75d4eaf6f80f163/pycrypto-2.6.1.tar.gz#md5=55a61a054aa66812daf5161a0d5d7eda
|
||||
[03]: https://pypi.python.org/packages/f9/e5/99ebb176e47f150ac115ffeda5fedb6a3dbb3c00c74a59fd84ddf12f5857/ecdsa-0.13.tar.gz#md5=1f60eda9cb5c46722856db41a3ae6670
|
||||
[06]: https://www.openssl.org/source/openssl-1.0.2j.tar.gz
|
||||
[07]: https://pypi.python.org/pypi/scrypt/
|
||||
[07z]: https://bitbucket.org/mhallin/py-scrypt/get/91d194b6a6bd.zip
|
||||
[10]: https://github.com/mmgen/mmgen/archive/stable_mingw.zip
|
||||
[14]: https://pypi.python.org/packages/f0/d0/21c6449df0ca9da74859edc40208b3a57df9aca7323118c913e58d442030/colorama-0.3.7.tar.gz#md5=349d2b02618d3d39e5c6aede36fe3c1a
|
||||
[15]: https://pypi.python.org/packages/e8/13/d0b0599099d6cd23663043a2a0bb7c61e58c6ba359b2656e6fb000ef5b98/pexpect-4.2.1.tar.gz#md5=3694410001a99dff83f0b500a1ca1c95
|
||||
[16]: https://download.sysinternals.com/files/SDelete.zip
|
||||
[20]: https://github.com/mmgen/MMGenLive
|
||||
[11]: https://github.com/bitcoin-core/secp256k1/archive/master.zip
|
||||
[31]: https://sourceforge.net/projects/mingw/files/MinGW/Extension/autoconf/autoconf2.5/autoconf2.5-2.68-1/autoconf2.5-2.68-1-mingw32-bin.tar.lzma
|
||||
[32]: https://sourceforge.net/projects/mingw/files/MinGW/Extension/automake/automake1.11/automake1.11-1.11.1-1/automake1.11-1.11.1-1-mingw32-bin.tar.lzma
|
||||
[33]: https://sourceforge.net/projects/mingw/files/MinGW/Extension/libtool/libtool-2.4-1/libtool-2.4-1-mingw32-bin.tar.lzma
|
||||
[77]: Install-Bitcoind
|
||||
[43]: https://pypi.python.org/packages/8a/34/b27ee501205893cf7cc537b4e6553a557eaaca14c4755aa1eaa500afac57/ed25519ll-0.6.tar.gz#md5=35b3190ffefb631e7c5a45d96d768f80
|
||||
[44]: https://pypi.python.org/packages/73/bf/978d424ac6c9076d73b8fdc8ab8ad46f98af0c34669d736b1d83c758afee/pysha3-1.0.2.tar.gz#md5=59cd2db7a9988c1f3f6aee40145e0c96
|
||||
|
|
@ -1,151 +0,0 @@
|
|||
***Warning: the MMGen installation process on Windows is not easy, and the user
|
||||
experience is less than optimal. You're urged to use the prebuilt
|
||||
[MMGenLive][20] USB image instead. It's now the preferred way for all non-Linux
|
||||
users to run MMGen.***
|
||||
|
||||
***Windows XP warning: MMGen is no longer officially supported on Windows XP due
|
||||
to incompatibilities with the Crypto.Random module. The scripts run, but the
|
||||
security of your random numbers cannot be guaranteed. Use at your own risk.***
|
||||
|
||||
### 1. Install the Python interpreter:
|
||||
|
||||
Grab the [Windows 32-bit installer][09] and run it, accepting the defaults.
|
||||
Add the Python base and Scripts directories to your [path][08], e.g.
|
||||
`C:\Python27;C:\Python27\Scripts`.
|
||||
|
||||
### 1. Create the build directory:
|
||||
|
||||
Enter your MSYS environment, create the directory `/c/build` and move to it.
|
||||
This is where you'll be unpacking and building archives:
|
||||
|
||||
$ mkdir /build
|
||||
$ cd /build
|
||||
|
||||
### 2. Build OpenSSL:
|
||||
|
||||
Grab the v1.0.x [tarball][06] from openssl.org, unpack and build:
|
||||
|
||||
$ tar.exe -xzf <path to openssl archive>/openssl-1.0.2j.tar.gz
|
||||
$ cd openssl-1.0.2j
|
||||
$ ./config --openssldir=/usr
|
||||
$ make
|
||||
$ make install
|
||||
|
||||
### 3. Build the Scrypt Python module:
|
||||
|
||||
The latest scrypt tarball available from [Python][07] at this writing
|
||||
(scrypt-0.8.0.tar.gz) has missing files and doesn't build, so grab the latest
|
||||
[source zipfile][07z] from the scrypt repository, unzip and build:
|
||||
|
||||
$ cd /build
|
||||
$ unzip <path to scrypt archive>/91d194b6a6bd.zip
|
||||
$ cd mhallin-py-scrypt-91d194b6a6bd
|
||||
|
||||
Open the file `setup.py` in your text editor. Right before the line beginning
|
||||
with
|
||||
|
||||
scrypt_module = Extension(
|
||||
|
||||
add the following lines (with no indentation):
|
||||
|
||||
library_dirs = [r'c:\msys\lib',r'c:\windows\system32']
|
||||
includes = [r'c:\msys\include']
|
||||
|
||||
Save `setup.py`, build and install:
|
||||
|
||||
$ python setup.py build --compiler=mingw32
|
||||
$ python setup.py install
|
||||
|
||||
You can ignore the error messages at the end of the build.
|
||||
|
||||
Now, to solve a problem with the interpreter not finding the scrypt extension
|
||||
module, we have to do this little workaround:
|
||||
|
||||
$ cd /c/Python27/lib/site-packages
|
||||
$ unzip scrypt*.egg
|
||||
|
||||
### 4. Build the pycrypto Python module:
|
||||
|
||||
Download the latest pycrypto [tarball][02] from the Python website, unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to pycrypto archive>/pycrypto-2.6.1.tar.gz
|
||||
$ cd pycrypto-2.6.1
|
||||
$ python setup.py build --compiler=mingw32
|
||||
$ python setup.py install
|
||||
|
||||
### 5. Install the ecdsa Python module:
|
||||
|
||||
Grab the latest python-ecdsa [tarball][03], unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to ecdsa archive>/ecdsa-0.13.tar.gz
|
||||
$ cd ecdsa-0.13
|
||||
$ python setup.py install
|
||||
|
||||
### 7. Install the colorama Python module (optional but recommended):
|
||||
|
||||
Grab the colorama [tarball][14], unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to colorama archive>/colorama-0.3.7.tar.gz
|
||||
$ cd /c/colorama-0.3.7
|
||||
$ python setup.py install
|
||||
|
||||
### 8. Install the pexpect Python module (needed for test suite):
|
||||
|
||||
Grab the latest pexpect [tarball][15], unpack and build:
|
||||
|
||||
$ cd /build
|
||||
$ tar -xzf <path to pexpect archive>/pexpect-4.2.1.tar.gz
|
||||
$ cd pexpect-4.2.1
|
||||
$ python setup.py install
|
||||
|
||||
### 9. Build libsecp256k1:
|
||||
|
||||
First you need to fix up some filenames for your build to work:
|
||||
|
||||
$ cd /mingw/bin
|
||||
$ cp autoconf-* autoconf
|
||||
$ cp automake-* automake
|
||||
$ cp aclocal-* aclocal
|
||||
$ cp autoreconf-* autoreconf
|
||||
|
||||
Now get the latest libsecp256k1 [zip archive][11] from GitHub, unpack, build and
|
||||
install:
|
||||
|
||||
$ cd /build
|
||||
$ unzip.exe <path to libsecp256k1 archive>/master.zip
|
||||
$ cd secp256k1-master
|
||||
$ ./autogen.sh
|
||||
$ ./configure
|
||||
$ make
|
||||
$ make install
|
||||
|
||||
### 10. Install MMGen:
|
||||
|
||||
Get the [zip archive][10] from GitHub, unpack and install:
|
||||
|
||||
$ cd /build
|
||||
$ unzip.exe <path to mmgen archive>/stable_mingw.zip
|
||||
$ cd mmgen-stable_mingw
|
||||
$ python setup.py build --compiler=mingw32
|
||||
$ python setup.py install
|
||||
|
||||
After first installing and starting the [Bitcoin daemon][77], you may then run
|
||||
the MMGen test suite to make sure your installation's working:
|
||||
|
||||
$ test/test.py
|
||||
|
||||
[02]: https://pypi.python.org/packages/60/db/645aa9af249f059cc3a368b118de33889219e0362141e75d4eaf6f80f163/pycrypto-2.6.1.tar.gz#md5=55a61a054aa66812daf5161a0d5d7eda
|
||||
[03]: https://pypi.python.org/packages/f9/e5/99ebb176e47f150ac115ffeda5fedb6a3dbb3c00c74a59fd84ddf12f5857/ecdsa-0.13.tar.gz#md5=1f60eda9cb5c46722856db41a3ae6670
|
||||
[06]: https://www.openssl.org/source/openssl-1.0.2j.tar.gz
|
||||
[07]: https://pypi.python.org/pypi/scrypt/
|
||||
[07z]: https://bitbucket.org/mhallin/py-scrypt/get/91d194b6a6bd.zip
|
||||
[08]: Editing-the-user-path-in-Windows
|
||||
[09]: https://www.python.org/ftp/python/2.7.12/python-2.7.12.msi
|
||||
[10]: https://github.com/mmgen/mmgen/archive/stable_mingw.zip
|
||||
[13]: Getting-Started-with-MMGen
|
||||
[14]: https://pypi.python.org/packages/f0/d0/21c6449df0ca9da74859edc40208b3a57df9aca7323118c913e58d442030/colorama-0.3.7.tar.gz#md5=349d2b02618d3d39e5c6aede36fe3c1a
|
||||
[20]: https://github.com/mmgen/MMGenLive
|
||||
[77]: Install-Bitcoind
|
||||
|
|
@ -1 +0,0 @@
|
|||
This document has [moved](Install-MMGen-on-Linux)
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
MinGW-64 (Minimal GNU for Windows) provides the gcc compiler and related tools
|
||||
for compiling source code into Windows binaries. MSYS provides a Unix-like
|
||||
environment under Windows with basic commands and utilities. MinGW-64 and MSYS
|
||||
were originally part of the same project and are designed to be used together.
|
||||
|
||||
Download the latest [MSYS zip archive][01] and [MinGW-64 7-zip archive][02]
|
||||
provided by the MinGW-64 team. To unpack the latter you'll need the program
|
||||
[7-zip][03].
|
||||
|
||||
After unzipping both archives to `C:\` (assuming that's the root of your
|
||||
filesystem), you'll have two new directory trees at `C:\msys` and `C:\mingw64`.
|
||||
|
||||
Open Power Shell and type the command `C:\msys\bin\bash.exe --login` to launch
|
||||
your MSYS environment.
|
||||
|
||||
To avoid having to type this command by hand each time you enter MSYS, you're
|
||||
advised to create a launcher icon. Copy the “PowerShell” icon, rename the copy
|
||||
to “MSYS”, right click on the icon, and add the above command to the end of the
|
||||
existing command line after a space.
|
||||
|
||||
Note: This version of MSYS comes with the Vim editor preinstalled. If you're an
|
||||
experienced Vim user or have read the [primer][11] and feel you know what you're
|
||||
doing, then proceed onward. Otherwise, you should install an easier-to use
|
||||
[text editor][00] before continuing with the installation.
|
||||
|
||||
Execute the command
|
||||
|
||||
mkdir -p /c/mingw620/x86_64-620-posix-seh-rt_v5-rev1/mingw64
|
||||
|
||||
Using your text editor within MSYS, create the file `/etc/fstab.conf` with the
|
||||
following two lines:
|
||||
|
||||
c:/mingw64 /mingw
|
||||
c:/mingw64 /c/mingw620/x86_64-620-posix-seh-rt_v5-rev1/mingw64
|
||||
|
||||
Execute the command `mount /mingw`
|
||||
|
||||
MSYS is a Unix-like environment. If you're new to Unix, you're advised to learn
|
||||
[a few basic commands][04].
|
||||
|
||||
[00]: A-word-on-text-editors
|
||||
[01]: https://sourceforge.net/projects/mingw-w64/files/External%20binary%20packages%20%28Win64%20hosted%29/MSYS%20%2832-bit%29/MSYS-20111123.zip
|
||||
[02]: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/6.2.0/threads-posix/seh/x86_64-6.2.0-release-posix-seh-rt_v5-rev1.7z
|
||||
[03]: https://sourceforge.net/projects/sevenzip/files/7-Zip/16.04/7z1604-x64.msi
|
||||
[04]: Unix-commands-and-environment
|
||||
[11]: https://github.com/mmgen/MMGenLive/wiki/README.Vim
|
||||
|
|
@ -1,67 +0,0 @@
|
|||
MinGW (Minimal GNU for Windows) provides the gcc compiler and related tools for
|
||||
compiling source code into Windows binaries. MSYS provides a Unix-like
|
||||
environment with basic Unix shell commands. MinGW and MSYS are part of the same
|
||||
project and are designed to be used together.
|
||||
|
||||
Complete hypertexted lists of the required MinGW and MSYS archive files are
|
||||
provided below for convenient downloading. Save the archives into two separate
|
||||
temporary directories (`mingw` and `msys`, for example).
|
||||
|
||||
These lists were checked and known to work at the time of this writing (December
|
||||
2016). More recent versions of the files are available in the [MinGW
|
||||
repository][01], and an auto-installer can be found there as well. However,
|
||||
these instructions will work on an offline computer, while the auto-installer
|
||||
will not.
|
||||
|
||||
> * [MinGW archive list][02]
|
||||
> * [MSYS archive list][03]
|
||||
|
||||
Unpack the basic-bsdtar archive (in the MinGW archives) and copy the executable
|
||||
`basic-bsdtar.exe` to your path (e.g. `C:\windows`).
|
||||
|
||||
From the DOS prompt (i.e. “Command Line”), create the two base directories and
|
||||
move to the first of them:
|
||||
|
||||
> mkdir C:\mingw
|
||||
> mkdir C:\msys
|
||||
> cd C:\mingw
|
||||
|
||||
Unpack all the MinGW archives (except basic-bsdtar) by executing the following
|
||||
command for each archive:
|
||||
|
||||
> basic-bsdtar.exe -xf <path to MinGW archives>/<archive name>
|
||||
|
||||
Now move the MSYS base directory:
|
||||
|
||||
> cd C:\msys
|
||||
|
||||
and unpack each MSYS archive in the same way:
|
||||
|
||||
> basic-bsdtar.exe -xf <path to MSYS archives>/<archive name>
|
||||
|
||||
Add `C:\mingw\bin` to your user path. Consult [this page][05] for instructions
|
||||
on how to do that.
|
||||
|
||||
Close the Command Prompt window and open a new one. Type the command
|
||||
`C:\msys\bin\bash.exe --login` to launch your MSYS environment.
|
||||
|
||||
To avoid having to type this command by hand each time you enter MSYS, you're
|
||||
advised to create a launcher icon. Copy the “Command Prompt” icon, rename the
|
||||
copy to “MSYS”, right click on the icon, and add the above command to the end of
|
||||
the existing command line after a space.
|
||||
|
||||
Note: At this point you must install a [text editor][00] before continuing
|
||||
with your installation.
|
||||
|
||||
Using your text editor within MSYS, create the file `/etc/fstab` with a
|
||||
single line: `c:/mingw /mingw`. Execute the command `mount /mingw`
|
||||
|
||||
MSYS is a Unix-like environment. If you're new to Unix, you're advised to learn
|
||||
[a few basic commands][04].
|
||||
|
||||
[00]: A-word-on-text-editors
|
||||
[01]: http://sourceforge.net/projects/mingw/files/
|
||||
[02]: Required-MinGW-Archives
|
||||
[03]: Required-MSYS-Archives
|
||||
[04]: Unix-commands-and-environment
|
||||
[05]: Editing-the-user-path-in-Windows
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
> * [msysCORE-bin][]
|
||||
> * [msysCORE-doc][]
|
||||
> * [msysCORE-ext][]
|
||||
> * [libtermcap-dll][]
|
||||
> * [bash-bin][]
|
||||
> * [libiconv-dll][]
|
||||
> * [less-bin][]
|
||||
> * [make-bin][]
|
||||
> * [tar-bin][]
|
||||
> * [libregex-dll][]
|
||||
> * [coreutils-bin][]
|
||||
> * [sed-bin][]
|
||||
> * [grep-bin][]
|
||||
> * [gzip-bin][]
|
||||
> * [zip-bin][]
|
||||
> * [unzip-bin][]
|
||||
> * [termcap-bin][]
|
||||
> * [gawk-bin][]
|
||||
> * [perl-bin][]
|
||||
> * [m4-bin][]
|
||||
> * [libcrypt-dll][]
|
||||
> * [libintl-dll][]
|
||||
|
||||
[msysCORE-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/msys-core/msys-1.0.18-1/msysCORE-1.0.18-1-msys-1.0.18-bin.tar.lzma
|
||||
[msysCORE-doc]: https://sourceforge.net/projects/mingw/files/MSYS/Base/msys-core/msys-1.0.18-1/msysCORE-1.0.18-1-msys-1.0.18-doc.tar.lzma
|
||||
[msysCORE-ext]: https://sourceforge.net/projects/mingw/files/MSYS/Base/msys-core/msys-1.0.18-1/msysCORE-1.0.18-1-msys-1.0.18-ext.tar.lzma
|
||||
[libtermcap-dll]: https://sourceforge.net/projects/mingw/files/MSYS/Base/termcap/termcap-0.20050421_1-2/libtermcap-0.20050421_1-2-msys-1.0.13-dll-0.tar.lzma
|
||||
[bash-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/bash/bash-3.1.17-4/bash-3.1.17-4-msys-1.0.16-bin.tar.lzma
|
||||
[libiconv-dll]: https://sourceforge.net/projects/mingw/files/MSYS/Base/libiconv/libiconv-1.14-1/libiconv-1.14-1-msys-1.0.17-dll-2.tar.lzma
|
||||
[less-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/less/less-436-2/less-436-2-msys-1.0.13-bin.tar.lzma
|
||||
[make-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/make/make-3.81-3/make-3.81-3-msys-1.0.13-bin.tar.lzma
|
||||
[libregex-dll]: https://sourceforge.net/projects/mingw/files/MSYS/Base/regex/regex-1.20090805-2/libregex-1.20090805-2-msys-1.0.13-dll-1.tar.lzma
|
||||
[coreutils-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/coreutils/coreutils-5.97-3/coreutils-5.97-3-msys-1.0.13-bin.tar.lzma
|
||||
[sed-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/sed/sed-4.2.1-2/sed-4.2.1-2-msys-1.0.13-bin.tar.lzma
|
||||
[grep-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/grep/grep-2.5.4-2/grep-2.5.4-2-msys-1.0.13-bin.tar.lzma
|
||||
[gzip-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/gzip/gzip-1.3.12-2/gzip-1.3.12-2-msys-1.0.13-bin.tar.lzma
|
||||
[zip-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Extension/zip/zip-3.0-1/zip-3.0-1-msys-1.0.14-bin.tar.lzma
|
||||
[termcap-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/termcap/termcap-0.20050421_1-2/termcap-0.20050421_1-2-msys-1.0.13-bin.tar.lzma
|
||||
[gawk-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/gawk/gawk-3.1.7-2/gawk-3.1.7-2-msys-1.0.13-bin.tar.lzma
|
||||
[perl-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Extension/perl/perl-5.8.8-1/perl-5.8.8-1-msys-1.0.17-bin.tar.lzma
|
||||
[m4-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Extension/m4/m4-1.4.16-2/m4-1.4.16-2-msys-1.0.17-bin.tar.lzma
|
||||
[libcrypt-dll]: https://sourceforge.net/projects/mingw/files/MSYS/Extension/crypt/crypt-1.1_1-3/libcrypt-1.1_1-3-msys-1.0.13-dll-0.tar.lzma
|
||||
[libintl-dll]: https://sourceforge.net/projects/mingw/files/MSYS/Base/gettext/gettext-0.18.1.1-1/libintl-0.18.1.1-1-msys-1.0.17-dll-8.tar.lzma
|
||||
[tar-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Base/tar/tar-1.23-1/tar-1.23-1-msys-1.0.13-bin.tar.lzma
|
||||
[unzip-bin]: https://sourceforge.net/projects/mingw/files/MSYS/Extension/unzip/unzip-6.0-1/unzip-6.0-1-msys-1.0.13-bin.tar.lzma
|
||||
|
|
@ -1,65 +0,0 @@
|
|||
> * [bsdtar][]
|
||||
> * [gcc-core-bin][]
|
||||
> * [gcc-core-dev][]
|
||||
> * [gcc-core-dll][]
|
||||
> * [gcc-c++-bin][]
|
||||
> * [gcc-c++-dev][]
|
||||
> * [gcc-c++-dll][]
|
||||
> * [binutils-bin][]
|
||||
> * [binutils-dev][]
|
||||
> * [gettext-dev][]
|
||||
> * [gettext-dll][]
|
||||
> * [libintl-dll][]
|
||||
> * [gmp-dev][]
|
||||
> * [gmp-dll][]
|
||||
> * [libiconv-dev][]
|
||||
> * [libiconv-dll][]
|
||||
> * [mingwrt-dev][]
|
||||
> * [mingwrt-dll][]
|
||||
> * [mpc-dev][]
|
||||
> * [mpc-dll][]
|
||||
> * [mpfr-dev][]
|
||||
> * [mpfr-dll][]
|
||||
> * [pthreads-w32-dev][]
|
||||
> * [pthreads-w32-dll][]
|
||||
> * [w32api-dev][]
|
||||
> * [zlib-dev][]
|
||||
> * [zlib-dll][]
|
||||
> * [gettext-bin][]
|
||||
> * [autoconf2.5-bin][]
|
||||
> * [automake1.11-bin][]
|
||||
> * [libtool-2.4-1-bin][]
|
||||
> * [xz-bin][]
|
||||
|
||||
[bsdtar]: https://sourceforge.net/projects/mingw/files/MinGW/Extension/bsdtar/basic-bsdtar-2.8.3-1/basic-bsdtar-2.8.3-1-mingw32-bin.zip
|
||||
[gcc-core-bin]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-core-4.8.1-4-mingw32-bin.tar.lzma
|
||||
[gcc-core-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-core-4.8.1-4-mingw32-dev.tar.lzma
|
||||
[gcc-core-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-core-4.8.1-4-mingw32-dll.tar.lzma
|
||||
[gcc-c++-bin]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-c++-4.8.1-4-mingw32-bin.tar.lzma
|
||||
[gcc-c++-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-c++-4.8.1-4-mingw32-dev.tar.lzma
|
||||
[gcc-c++-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.8.1-4/gcc-c++-4.8.1-4-mingw32-dll.tar.lzma
|
||||
[binutils-bin]: https://sourceforge.net/projects/mingw/files/MinGW/Base/binutils/binutils-2.24/binutils-2.24-1-mingw32-bin.tar.xz
|
||||
[binutils-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/binutils/binutils-2.24/binutils-2.24-1-mingw32-dev.tar.xz
|
||||
[gettext-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gettext/gettext-0.18.3.1-1/gettext-0.18.3.1-1-mingw32-dev.tar.lzma
|
||||
[gettext-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gettext/gettext-0.18.3.1-1/gettext-0.18.3.1-1-mingw32-dll.tar.lzma
|
||||
[libintl-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gettext/gettext-0.18.1.1-2/libintl-0.18.1.1-2-mingw32-dll-8.tar.lzma
|
||||
[gmp-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gmp/gmp-5.1.2/gmp-5.1.2-1-mingw32-dev.tar.lzma
|
||||
[gmp-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gmp/gmp-5.1.2/gmp-5.1.2-1-mingw32-dll.tar.lzma
|
||||
[libiconv-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/libiconv/libiconv-1.14-3/libiconv-1.14-3-mingw32-dev.tar.lzma
|
||||
[libiconv-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/libiconv/libiconv-1.14-3/libiconv-1.14-3-mingw32-dll.tar.lzma
|
||||
[mingwrt-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/mingwrt/mingwrt-3.22/mingwrt-3.22.4-mingw32-dev.tar.xz
|
||||
[mingwrt-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/mingwrt/mingwrt-3.22/mingwrt-3.22.4-mingw32-dll.tar.xz
|
||||
[mpc-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/mpc/mpc-1.0.1-2/mpc-1.0.1-2-mingw32-dev.tar.lzma
|
||||
[mpc-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/mpc/mpc-1.0.1-2/mpc-1.0.1-2-mingw32-dll.tar.lzma
|
||||
[mpfr-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/mpfr/mpfr-3.1.2-2/mpfr-3.1.2-2-mingw32-dev.tar.lzma
|
||||
[mpfr-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/mpfr/mpfr-3.1.2-2/mpfr-3.1.2-2-mingw32-dll.tar.lzma
|
||||
[pthreads-w32-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/pthreads-w32/pthreads-w32-2.9.1/pthreads-w32-2.9.1-1-mingw32-dev.tar.lzma
|
||||
[pthreads-w32-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/pthreads-w32/pthreads-w32-2.9.1/pthreads-w32-2.9.1-1-mingw32-dll.tar.lzma
|
||||
[w32api-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/w32api/w32api-3.18/w32api-3.18.2-mingw32-dev.tar.xz
|
||||
[zlib-dev]: https://sourceforge.net/projects/mingw/files/MinGW/Base/zlib/zlib-1.2.8/zlib-1.2.8-1-mingw32-dev.tar.lzma
|
||||
[zlib-dll]: https://sourceforge.net/projects/mingw/files/MinGW/Base/zlib/zlib-1.2.8/zlib-1.2.8-1-mingw32-dll.tar.lzma
|
||||
[gettext-bin]: https://sourceforge.net/projects/mingw/files/MinGW/Base/gettext/gettext-0.18.3.1-1/gettext-0.18.3.1-1-mingw32-bin.tar.lzma
|
||||
[autoconf2.5-bin]: https://sourceforge.net/projects/mingw/files/MinGW/Extension/autoconf/autoconf2.5/autoconf2.5-2.68-1/autoconf2.5-2.68-1-mingw32-bin.tar.lzma
|
||||
[automake1.11-bin]: https://sourceforge.net/projects/mingw/files/MinGW/Extension/automake/automake1.11/automake1.11-1.11.1-1/automake1.11-1.11.1-1-mingw32-bin.tar.lzma
|
||||
[libtool-2.4-1-bin]: https://sourceforge.net/projects/mingw/files/MinGW/Extension/libtool/libtool-2.4-1/libtool-2.4-1-mingw32-bin.tar.lzma
|
||||
[xz-bin]: https://sourceforge.net/projects/mingw/files/MinGW/Extension/xz/xz-5.0.3-2/xz-5.0.3-2-mingw32-bin.tar.lzma
|
||||
Loading…
Add table
Add a link
Reference in a new issue