Update BUILD doc to reflect changes in build.
This commit is contained in:
parent
bacdf5438d
commit
d02c5ea594
41
BUILD
41
BUILD
|
@ -1,5 +1,6 @@
|
|||
|
||||
This document explains how to properly build an Android package of Orbot from source.
|
||||
This document explains how to properly build an Android package of Orbot from
|
||||
source.
|
||||
|
||||
Orbot includes, in the external directory, git repo submodules of:
|
||||
- Tor
|
||||
|
@ -7,45 +8,53 @@ Orbot includes, in the external directory, git repo submodules of:
|
|||
- LibEvent
|
||||
- JTorControl: The Tor Control Library for Java
|
||||
|
||||
The Orbot repo also includes the Privoxy source code of a recent stable release.
|
||||
The Orbot repo also includes the Polipo source code of a recent stable release.
|
||||
|
||||
Please install the following prerequisites (instructions for each follows):
|
||||
ant: http://ant.apache.org/
|
||||
Android Native Dev Kit or NDK (for C/C++ code): http://developer.android.com/sdk/ndk/index.html
|
||||
Android Software Dev Kit or SDK (for Java code): http://developer.android.com/sdk/index.html
|
||||
Android Native Dev Kit or NDK (for C/C++ code):
|
||||
http://developer.android.com/sdk/ndk/index.html
|
||||
Android Software Dev Kit or SDK (for Java code):
|
||||
http://developer.android.com/sdk/index.html
|
||||
|
||||
You will need to run the 'android' command in the SDK to install the necessary Android platform supports (ICS 4.x or android-15)
|
||||
You will need to run the 'android' command in the SDK to install the necessary
|
||||
Android platform supports (ICS 4.x or android-15)
|
||||
|
||||
Be sure that you have all of the git submodules up-to-date:
|
||||
|
||||
git submodule init
|
||||
git submodule update
|
||||
git submodule update --init --recursive
|
||||
|
||||
To begin building, from the Orbot root directory, you first need to build all external C/native dependencies:
|
||||
To begin building, from the Orbot root directory, you first need to build all
|
||||
external C/native dependencies:
|
||||
|
||||
export NDK_BASE={PATH TO YOUR NDK INSTALL}
|
||||
make -C external
|
||||
|
||||
At this point, you'll have Tor and Privoxy binaries that can be run on an Android handset.
|
||||
You can verify the ARM binary was properly built using the following command:
|
||||
At this point, you'll have Tor and Polipo binaries that can be run on an
|
||||
Android handset. You can verify the ARM binary was properly built using the
|
||||
following command:
|
||||
|
||||
file res/raw/tor
|
||||
file res/raw/privoxy
|
||||
file external/bin/tor external/bin/polipo
|
||||
|
||||
You should see something like:
|
||||
src/or/tor: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), not stripped
|
||||
external/bin/tor: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
|
||||
dynamically linked (uses shared libs), not stripped
|
||||
external/bin/polipo: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
|
||||
dynamically linked (uses shared libs), not stripped
|
||||
|
||||
This isn't enough though and we'll now sew up the binary into a small package
|
||||
that will handle basic Tor controlling features.
|
||||
|
||||
android update project --name Orbot --target android-15 --path .
|
||||
|
||||
#Now you need to split and copy the tor binary into res/raw. We split it into < 1M chunks
|
||||
#because some Android devices don't like resources larger than 1M.
|
||||
#split --bytes=1m $DROID_ROOT/external/tor/tor/src/or/tor res/raw/tor
|
||||
Now you need to split and copy the tor binary into external/bin. We split it
|
||||
into < 1M chunks because some Android devices don't like resources larger than
|
||||
1M.
|
||||
split --bytes=1m ./external/tor/src/or/tor ./external/bin/tor
|
||||
|
||||
Now build the Android app
|
||||
|
||||
./update-ant-build
|
||||
ant release
|
||||
|
||||
This will produce an unsigned Tor package in ./bin/Orbot-unsigned.apk!
|
||||
|
|
Loading…
Reference in New Issue