Advanced Onion Router ⋅ Compile

To build AdvOR.dll install masm32 from then execute DLL\a.bat

## Instructions for building AdvOR with MinGW (

Stage One: Download and Install MinGW and Masm32.

Download mingw:

Start the installer and select mingw32-base, msys-base and mingw-developer-toolkit

Download masm32 from

Install masm32.

Create a directory called "AdvOR".

Stage Two: Download, extract, compile zlib

Download zlib source:

Extract zlib:
Copy the zlib tarball into the "AdvOR" directory
Type "cd AdvOR/"
Type "tar zxf zlib-1.2.11.tar.gz"


Make zlib.a:
Type "cd zlib-1.2.11/"
Type "./configure"
Type "make -f win32/Makefile.gcc"
Assuming you have MingGW installed in c:/ :
Type cp -iv zlib1.dll c:/mingw/bin
Type cp -iv zconf.h zlib.h c:/mingw/include
Type cp -iv libz.a c:/mingw/lib/libzlib.a


Stage Three: Download, extract, compile openssl

Download openssl:

Extract openssl:
Copy the openssl tarball into the "AdvOR" directory.
Type "cd AdvOR/"
Type "tar zxf openssl-1.1.0e.tar.gz"

If you're using an older version of Perl for MinGW:
Download Perl-MinGW from
Extract bin, lib and share from to the msys/1.0/ directory

Make openssl libraries:
Type "cd openssl-1.1.0e/"
Type "./Configure -no-shared -no-idea -no-rc5 -no-mdc2 mingw"
Edit Makefile and replace "\" with "/" in the line containing "PERL="
Edit crypto/init.c and replace
"ret = GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_PIN,(void *)&base_inited, &handle);"
"handle = GetModuleHandle((void *)&base_inited);ret = 1;"
"ret = GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_PIN,handlersym.sym, &handle);
"handle = GetModuleHandle(handlersym.sym);ret = 1;"
Edit crypto/bio/b_addr.c and insert, after the #included files, a line containing "#undef AI_PASSIVE"
Type "make depend"
# The next steps can take up to 30 minutes to complete.
Type "make"
Type "make install"

Stage Four: Download, extract, and compile libevent-2.1.8

Download the libevent 2.1.8 release:

Copy the libevent tarball into the "AdvOR" directory.

Extract libevent.
Copy the libevent tarball into the "AdvOR" directory.
Type "cd AdvOR/"
Type "tar zxf libevent-2.1.8-stable.tar.gz"

Type "cd libevent-2.1.8-stable/"
Type "./configure --enable-static --disable-shared"
Type "make"
Type "make install"

Stage Five: Download, extract, and compile libntlm-1.4

Download the libntlm 1.4 release:

Copy the libevent tarball into the "AdvOR" directory.
Type "cd AdvOR"

Extract libntlm.

Type "./configure --enable-static --disable-shared"
Type "make"
Type "make install"

Stage Six: Build AdvOR

Download the current AdvOR release from .
Extract into the "AdvOR" directory.

cd AdvOR
Type "make"

You now have AdvOR.exe in current directory.


Date Author Comment
- - Leave your comment
2016-05-20 14:00 User Thank you! Needed this help!
- - Leave your comment
← Back ⋅ 1 ⋅ Next →