blob: 62e703dab443df99ca595965635cc9090d5da5ca (
plain)
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
102
103
104
105
106
107
108
109
110
111
112
113
114
|
Prerequisites for building the OpenDataPlane (ODP) API
1. Linux kernel >= 2.6.32
Earlier versions may or may not work.
2. autotools
automake
autoconf
libtool
On Debian/Ubuntu systems:
$ sudo apt-get install automake autoconf libtool
On CentOS/RedHat/Fedora systems:
$ sudo yum install automake autoconf libtool libtoolize
3. required libraries
Libraries currently required to link: openssl
3.1 native compile
For native compilation, simply load the necessary libraries using the appropriate
tool set.
On Debian/Ubuntu systems:
$ sudo apt-get install libssl-dev
On CentOS/RedHat/Fedora systems:
$ sudo yum install openssl-devel
3.2 cross compilation
Cross compilation requires cross compiling the individual libraries. In order for
a cross compiled executable to run on a target system, one must build the same
version as that which is installed on the target rootfs.
For example, to build openssl for both 32 and 64 bit compilation:
# Clone openssl repository
$ git clone git://git.openssl.org/openssl.git
$ cd openssl
# The command "git tag" will list all tags available in the repo.
$ git tag
# Checkout the specific tag to match openssl library in your target rootfs
$ git checkout <tag name>
# Build and install 32 bit version of openssl
$ ./Configure linux-generic32 --cross-compile-prefix=arm-linux-gnueabihf- \
--prefix=/home/user/src/install-openssl shared
$ make
$ make install
# Build and install 64 bit version of openssl
$ ./Configure linux-generic64 --cross-compile-prefix=aarch64-linux-gnu- \
--prefix=/home/user/src/install-openssl-aarch64 shared
$ make
$ make install
# You may now build either 32 or 64 bit ODP
$ git clone git://git.linaro.org/lng/odp.git odp
$ cd odp
$ ./bootstrap
# Build 32 bit version of ODP
$ ./configure --host=arm-linux-gnueabihf \
--with-openssl-path=/home/user/src/install-openssl
$ make
# Or build 64 bit version of ODP
$ ./configure --host=aarch64-linux-gnu \
--with-openssl-path=/home/user/src/install-openssl-aarch64
$ make
4.0 Packages needed to build API tests
Cunit test framework
Cunit prvodes a framework to run the API test suite that proves conformance to the
ODP API. The home page http://cunit.sourceforge.net/doc/introduction.html
4.1 Native Cunit install
# Debian/Ubuntu
$ apt-get install libcunit1-dev
4.2 Cross compile of Cunit
$ git svn clone http://svn.code.sf.net/p/cunit/code/trunk cunit-code
$ cd cunit-code
$ ./bootstrap
$ ./configure --host=arm-linux-gnueabihf --prefix=/home/<user>/src/install-cunit
4.3 Using Cunit with ODP
$ Add the configuration option to the regular configuration options
./configure --enable-cunit #if cunit is in the PATH
./configure --with-cunit-path=DIR #only if you need a path to Cunit libs and headers
5.0 Documentation & Doxygen
See http://www.stack.nl/~dimitri/doxygen/manual/install.html
The tested version of doxygen is 1.8.8
5.1 HTML
# Debian/Ubuntu
$ apt-get install doxygen graphviz
5.2 PDF
# Debian/Ubuntu
$ apt-get install texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
|