summaryrefslogtreecommitdiff
path: root/src/poi-service/README
blob: cf1b54b9cbacb3a693552630bf2e6b055713b637 (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
115
116
117
118
119
120
121
122
123
124
125
126
Release date of the file: 18-11-2015 
Status: OK

Project:
Search engine for Point Of Interest with a content access module mechanism to extend to additional sources of data
This project is one of the navigation-service common projects that implements the GENIVI navigation APIs.

More:
The project is made of sub parts:
- poi-supplier that populates a sqlite3 based database from OSM data in xml format
- poi-server that implements the poi search API and access an embedded database
- poi-contentaccess-module that implements a content access module that access an additional database, and a simple HMI 
- poi-client that implements a client with a test HMI 
- poi-manager-server and poi-manager-client that implements a CommonAPI based proof of concept of an extension of the poi-contentaccess-module
See also other navigation projects like navigation or proof of concepts implemented for traffic-info and positioning 

What is in:
This folder contains scripts for building poi-server and poi-manager-server
FYI: poi-supplier, poi-contentaccess-module and poi-client are located under test/poi-service

Author: 
Philippe Colliot philippe.colliot@mpsa.com

License: 
See headers and LICENSE file

Test target: 
Ubuntu 14.04 LTS 32bits
Ubuntu 15.10 64bits

To get the code:
Code is part of the navigation-service repository, so you need to clone the whole content:
git clone http://git.projects.genivi.org/lbs/navigation-service.git $WORKING-DIR
 
===============================
How To Build poi-server
===============================

Create and enter the build folder:
mkdir ./build
cd build

Build:
cmake ../
make
cd ..

===============================
How To Run poi-server
===============================

./bin/poi-server  -f ./resource/poi-database-sample.db

===============================
How To Build poi-manager-server
===============================
NB: You need CommonAPI 3.1.2 and Franca 0.9.1 installed 

=============
If the CommonAPI stuff has been generated into /usr/local/
Check if the links are well set into /usr/local/lib
if not do it yourself

cd /usr/local/lib
rm libCommonAPI-DBus.so.3
rm libCommonAPI.so.3 
ln -s libCommonAPI-DBus.so.3.1.2 libCommonAPI-DBus.so.3
ln -s libCommonAPI.so.3.1.2 libCommonAPI.so.3

The folder /usr/local/include/CommonAPI-3.1/CommonAPI must contain 3.1.2 include files

=============
In case the .pc are not well generated, please add these files to /usr/local/lib/pkgconfig

CommonAPI.pc

prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: Common API C++
Description: GENIVI Common API C++ Library
Version: 3.1.2
Libs: -L${libdir} -lCommonAPI 
Cflags: -I${includedir}/CommonAPI-3.1

CommonAPI-DBus.pc

prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: Common API C++ D-Bus Middleware
Description: GENIVI Common API C++ D-Bus Middleware
Version: 3.1.2
Requires: CommonAPI dbus-1
Libs: -L${libdir} -Wl,--no-as-needed -lCommonAPI-DBus -Wl,--as-needed 
Cflags: -I${includedir}/CommonAPI-3.1

=============
You need to pass as parameter to the cmake the link to your patched dbus library (required by CommonAPI)

NB: For the 64 bits version, replace 'x86' with 'x86_64' in the command below:

cd build
cmake -DWITH_FRANCA_INTERFACE=ON -DDBUS_LIB_PATH=yourPath -DCOMMONAPI_DBUS_TOOL_GENERATOR=<common-api-dbus-tools folder>/org.genivi.commonapi.dbus.cli.product/target/products/org.genivi.commonapi.dbus.cli.product/linux/gtk/x86/commonapi-dbus-generator-linux-x86 -DCOMMONAPI_TOOL_GENERATOR=<common-api-tools folder>/org.genivi.commonapi.core.cli.product/target/products/org.genivi.commonapi.core.cli.product/linux/gtk/x86/commonapi-generator-linux-x86 -DWITH_DEBUG=ON ../
make 
cd ..

===============================
How To Run poi-manager-server
===============================

Copy the configuration file ./resource/commonapi-dbus.ini in a directory of your choice

Set the environment variable COMMONAPI_DBUS_DEFAULT_CONFIG before starting the poi-manager-server.

Example:
export COMMONAPI_DBUS_DEFAULT_CONFIG=<your path>/commonapi-dbus.ini

cp ./resource/poi-database-managed.db ./bin
./bin/poi-manager-server -f ./bin/poi-database-managed.db