-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbuild-application-HOWTO.txt
More file actions
101 lines (67 loc) · 4.73 KB
/
build-application-HOWTO.txt
File metadata and controls
101 lines (67 loc) · 4.73 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
This document contains a step by step description to compile the dessert manager application.
Supported systems are: Linux, Mac OS X and Cygwin
[Only Cygwin and Linux are tested while Cygwin had most mileage]
----------------------------------------------------------------------------------------------------
Prerequisites:
- Java SE 6, JDK (http://www.oracle.com/technetwork/java/javase/downloads/index.html)
- Android SDK Revision 7 or newer (http://developer.android.com/sdk/index.html)
[while newer revisions SHOULD work only revision 7 has been tested]
- Eclipse IDE 3.5 or newer (www.eclipse.org)
- Android Eclipse ADT (http://developer.android.com/sdk/eclipse-adt.html)
[version must match the installed SDK; see ADT home page for specifics]
OR
- Ant 1.8.1 or newer (http://ant.apache.org/)
If you happen to get stuck please check:
- http://developer.android.com/guide/developing/eclipse-adt.html
- http://developer.android.com/guide/developing/other-ide.html
All references to directories in this document are relative to the directory where the dessert
manager source code is placed unless otherwise noted.
Building with Eclipse is recommended and a lot more convenient if you happen to have everything
installed already.
----------------------------------------------------------------------------------------------------
Step 1: Update the DES-SERT libraries (optional)
If you or someone else has followed the "build-dessert-HOWTO.txt" document you should be in
possession of tarball containing the compiled DES-SERT libraries and it's dependencies. The tarball
should contain libraries for at least libdessert, libpcap and libcli.
Place all libraries into the "assets" directory and remove any existing library files but keep the
"libraries.properties" file.
Now rename the libraries with only lower case letters. [This is a restriction of the Android SDK
tools used to package the final .apk file]
Edit the "libraries.properties" file as follows:
- Versions in this file are always .so versions as defined used by Libtool
each library should be named <libname>.so.<version> in the tarball where <version> consists of
3 numbers
- lib.version should equal the .so version of libdessert
- For each library named <libname> make sure the following entries exist
# lib.source.name.<name> must equal the filename of the library in the "assets" directory
# lib.target.name.<name> must equal <libname>.so (original filename without version)
# lib.target.version.<name> must equal <version>
where <name> is the <libname> without the prefix "lib"
- Make sure no other entries as the ones mentioned before exist
After updating the libraries to be included in the dessert manager it is recommended to save a copy
of the tarball with the desssert manager sources. This way you can use the proper libraries and
headers to build daemon executables so they are linked against the specific libraries of this
application version.
----------------------------------------------------------------------------------------------------
Step 2a: Building with Eclipse (recommended; alternative is 2b)
Just import the project into eclipse as an Android project. Use the Run and Debug Configurations to
quickly install the application onto a device if you want to test it.
The "dessert-manager.apk" file will be automatically generated by eclipse and can be found in the
"bin" directory albeit signed with a personal debug certificate.
To build and sign the application with a release certificate use the menu "Export... *-> Android ->
Export Android Application" and follow the instructions.
(optional) If you want to develop and test the application collaboratively and you want to install
your own builds interspersed with the builds of the other developers then you should use a common
debug key. The project contains a "debug.keystore" file. Use the menu "Preferences *-> Android ->
Build -> Custom Debug Keystore" to use the "debug.keystore" while developing.
----------------------------------------------------------------------------------------------------
Step 2b: Building with Ant (alternative to 2a)
Make sure the "local.properties" file exists and the "sdk.dir" key is set to the path of the
installed Android SDK. You can use the "local.properties.template" if the file does not exist yet.
To make sure the build process for release builds uses the release certificate edit
"build.properties" and set the values for the keys "key.store" and "key.alias"
You can now call:
- ant debug ; to build and sign with the personal debug certificate
- ant release ; to build and sign with the release certificate if configured
otherwise this does not sign the build artifact neither does it zipalign it
The build artifacts can found in the "bin" directory.