[tor-commits] [flashproxy/master] Merge windows-deployment-howto into bundle-windows.
dcf at torproject.org
dcf at torproject.org
Wed Mar 20 16:48:42 UTC 2013
commit c1bfda3a385f37b14b7c050084125e8d597005c9
Author: Alexandre Allaire <alexandre.allaire at mail.mcgill.ca>
Date: Wed Mar 20 12:14:43 2013 -0400
Merge windows-deployment-howto into bundle-windows.
---
doc/bundle-windows.txt | 102 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 102 insertions(+), 0 deletions(-)
diff --git a/doc/bundle-windows.txt b/doc/bundle-windows.txt
index 330e6f3..dd7477d 100644
--- a/doc/bundle-windows.txt
+++ b/doc/bundle-windows.txt
@@ -1,5 +1,107 @@
== Dependencies
+=== Cygwin
+
+Cygwin is used to provide a shell environment and other commands. We
+don't actually use the Cygwin compatibility layer.
+
+http://cygwin.com/install.html
+http://cygwin.com/setup.exe
+http://cygwin.com/setup.exe.sig
+
+Verify the signature (do it on another machine if you don't already have
+GnuPG installed locally).
+ $ gpg --verify setup.exe.sig
+You need to install at least the following packages:
+ bash
+ coreutils
+ gnupg
+ grep
+ make
+ mingw-gcc-core
+ perl
+ zip
+Don't install the Cygwin python package. Use Python's own Windows
+installer as described in the next section.
+
+=== Python
+
+Get the latest 32-bit installer in the 2.x series.
+
+http://python.org/download/
+http://python.org/ftp/python/2.7.3/python-2.7.3.msi
+http://python.org/ftp/python/2.7.3/python-2.7.3.msi.asc
+
+Verify the signature (instructions are on the download page).
+ $ gpg --verify python-2.7.3.msi.asc
+Run the installer. "Install for all users". Disable "Tcl/Tk",
+"Documentation", "Utility Scripts", and "Test suite".
+
+Set the PATH environment variable as described at
+http://docs.python.org/2/using/windows.html#configuring-python:
+ PATH=<existing path>;C:\Python27
+You will have to restart your Cygwin shells to pick up the new PATH.
+
+=== py2exe
+
+http://sourceforge.net/projects/py2exe/files/py2exe/
+http://sourceforge.net/projects/py2exe/files/py2exe/0.6.9/py2exe-0.6.9.win32-py2.7.exe/download
+
+The sha256sum of the package I used was
+
+610a8800de3d973ed5ed4ac505ab42ad058add18a68609ac09e6cf3598ef056c py2exe-0.6.9.win32-py2.7.exe
+
+=== OpenSSL
+
+https://openssl.org/source/
+https://openssl.org/source/openssl-1.0.1c.tar.gz
+https://openssl.org/source/openssl-1.0.1c.tar.gz.asc
+
+Verify the signature.
+ $ gpg --verify openssl-1.0.1c.tar.gz.asc
+Build OpenSSL from source using Cygwin and MinGW. Install the Cygwin
+package mingw-gcc-core if it's not already installed. Run these commands
+in the OpenSSL source directory:
+ CROSS_COMPILE=i686-pc-mingw32- ./Configure shared mingw
+ make
+ make install
+Then, add C:\cygwin\usr\local\ssl\bin to PATH as you did with Python
+above.
+
+=== SWIG
+
+This is a prerequisite for building M2Crypto.
+
+http://www.swig.org/download.html
+http://downloads.sourceforge.net/project/swig/swigwin/swigwin-2.0.8/swigwin-2.0.8.zip
+
+The sha256sum of the package I used was
+
+35bc3013d43e0034677c08bab30bfc94ed6d44fbfffa4c5158f5788d29f4636d swigwin-2.0.8.zip
+
+Just extract the zip in the same directory in which you will extract
+M2Crypto.
+
+=== M2Crypto
+
+http://chandlerproject.org/Projects/MeTooCrypto#Downloads
+http://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.21.1.tar.gz
+http://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.21.1.tar.gz.asc
+
+There are binary installers on the M2Crypto page, but it says they are
+"provided by volunteers, untested by M2Crypto author." Instead build
+from source.
+
+The distutils build_ext command hardcodes the compiler name "gcc" when
+using the "mingw32" compiler. Make a copy of the MinGW compiler with
+that name.
+ $ cp /usr/bin/i686-pc-mingw32-gcc /usr/bin/gcc
+Build the package.
+ $ PATH=$PATH:../swigwin-2.0.8 python setup.py build_ext -c mingw32 --openssl C:\\cygwin\\usr\\local\\ssl -L C:\\cygwin\\usr\\local\\ssl\\bin
+ $ python setup.py bdist_wininst
+This will leave an MSI installer in the dist directory. Double-click it
+to install M2Crypto amid the other Python files.
+
=== 7-Zip
This is used to build a self-extracting bundle executable. The p7zip
More information about the tor-commits
mailing list