[tor-dev] Building Tor Browser Bundle on Windows

AntiTree antitree at gmail.com
Mon Mar 4 03:35:25 UTC 2013


This is really cool. I've had similar issues in the past. Nice job.
On Mar 3, 2013 10:31 PM, "Tom Ritter" <tom at ritter.vg> wrote:

> This weekend I tried building several of the tor projects on Windows (tor,
> vidalia, tbb, and vanilla firefox).  I kept notes of my adventures, some of
> the quirks I ran into, and the final set of instructions that seemed to
> work for me.
>
> Perhaps most usefully, I've created an Amazon AMI that anyone will be able
> to boot up and use.  (Yes, this has trust issues, I've addressed them in
> the top of the README document attached.)  The intention is that people who
> want to test a patch or develop a patch can use this to bootstrap
> themselves, without having to fight long and hard to set up a Windows build
> environment.
>
> I've attached two documents:
>  1) TBB Environment README.txt
>  2) Adventures in Compilation.txt
>
> The first is the README for the environment.
> The second is a journal of my trying to figure out what to do.
>  Specifically I'm going to call out several issues.  If desired, I can
> submit patches to address them, and they can be reviewed.
>
> I understand that documentation is usually a lower priority than actually
> shipping software, please take these comments not as bitchy criticism, but
> instead a list of things I'd like to improve, if someone can review my
> suggestions and shepard me a little.
>
> 1) Firefox's official build environment is VS2010 while TBB's is VS2008
>
> I'm not 100% sure, but it seems like it'd be relatively easy to switch TBB
> over to 2010.  There may be some issues.  But it seems like it'd be good to
> track FF's official build env.  I ran across at least 1 Vanilla FF issue
> that broke in 2008, and there seemed to be a few in the bugtracker.
>
> 2) Vidalia's build environment instructions contradict TBB's
>
> https://gitweb.torproject.org/vidalia.git/blob/HEAD:/INSTALL
>
> https://gitweb.torproject.org/torbrowser.git/blob/HEAD:/docs/buildmachine_setups/windows.txt
>
> Vidalia's says you need CMake in your PATH, TBB's says you don't.
> I think it can be in your PATH.
>
> 3) There's no explicit instructions on how to build Tor in Windows
>
> It seems like you just build it in MinGW?  It worked anyway.
> It's a (minor) bitch to get the components built and placed in the
> 'correct way
> and place' for the MinGW toolchain.  (Now documented in my README)
>
> 4) The TorBrowser build instructions are really, really bad.
>
>
> https://gitweb.torproject.org/torbrowser.git/blob/HEAD:/docs/buildmachine_setups/windows.txt
> This is pretty good.  But it just ends abruptly, and doesn't tell you want
> to do.
>
> https://gitweb.torproject.org/torbrowser.git/blob/HEAD:/docs/HACKING
> This document seems to be mostly up to date, although I think the FF
> Extensions
> it lists have been changed since.
>
>
> https://gitweb.torproject.org/torbrowser.git/blob/HEAD:/build-scripts/INSTALL
> This one is super out of date.
>  - You don't need subversion or winrar
>  - It talks a lot about getting FirefoxPortable (or built a custom Firefox)
>  - I didn't try following the instructions for MinGW, msys, cmake, qt,
> msysGTK,
>    or autoconf - since I had those already.  It seems these sections have
> been
>    subsumed by the windows buildmachine document
>  - The OpenSSL instructions do not match the instructions IN OpenSSL
>  - Vidalia's links are way out of date and dead
>  - Its instructions for Vidalia don't match Vidalia's
>  - It talks about PidginPortable?  I think that's been nixed...
>  - "Currently the Tor Browser Bundle uses FirefoxPortable binaries."
>  - It talks about building with MSVC 7.1 (Visual Studio 2003)
>  - It stops short of telling you how to actually build the bundle, probably
>    because the makefiles are newer than this document
>
>
> https://gitweb.torproject.org/torbrowser.git/blob/HEAD:/build-scripts/DEPLOYMENT
> This doesn't seem applicable at all anymore
>
> I eventually found (by searching my email spools) the magic incantation to
> kick it off.  The "TorBrowser" section of Adventures in Compilation.txt
> shows my hiccups and luck getting it going.
>
>
>
> Finally, after all this.... tbb-firefox crashes. I don't know why.  I
> don't know if it's because I'm using VS2010, or my msvc*.dll swaps.
>  Specifically it's crashing here:
>
>
> c:\build\torbrowser\build-scripts\build-alpha-windows\build\firefox-17.0.3esr\content\xul\templates\src\nsrulenetwork.h
>     class Iterator : public ConstIterator {
>         public:
>             Iterator(ReteNode** aNode) : ConstIterator(aNode) {}
>
>             Iterator& operator++() {
>                 ++mCurrent;
>                 return *this; }
>
>             Iterator operator++(int) {
>                 Iterator result(*this);
>                 ++mCurrent;
>                 return result; }
>
>             ReteNode* operator*() const {
>                 return *mCurrent; }
> <=========================================
>
>             ReteNode* operator->() const {
>                 return *mCurrent; }
>
>             bool operator==(const ConstIterator& aConstIterator) const {
>                 return mCurrent == aConstIterator.mCurrent; }
>
>             bool operator!=(const ConstIterator& aConstIterator) const {
>                 return mCurrent != aConstIterator.mCurrent; }
>         };
>
> I'm not quite sure where to start figuring out *why* it's dereferencing a
> null ptr.  The windbg output is in the bottom of both docs.
>
> The AMI for the EC2 instance is ami-2e36ab47 - when you start it, open
> ports 3389 and 8080 in the firewall for 0.0.0.0/0 (or just your IP
> address if you want.)
> If you try it, and get skeeved out by them asking for your SSH private key
> to get the password, check out
> https://github.com/tomrittervg/decrypt-windows-ec2-passwd
>
> -tom
>
> _______________________________________________
> tor-dev mailing list
> tor-dev at lists.torproject.org
> https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.torproject.org/pipermail/tor-dev/attachments/20130303/70e9a826/attachment.html>


More information about the tor-dev mailing list