use CMAKE_INSTALL_LIBDIR instead of "/usr/lib"
[profile/ivi/smartdevicelink.git] / doc / install.txt
1 * Introduction
2   ================
3   smartDeviceLinkCore is an application which manages the transport, connection and communication between a head unit and mobile device.
4
5 * OS and Hardware
6   =========
7   Ubuntu 12.04.01 LTS 32-bit OS on the PC with USB-dongle
8   Application has been tested using 2 types of USB-dongle:
9   D-Link DBT-122
10   STLab B-121mini
11
12 * External components
13   ===================
14   For build application we need:
15   libbluetooth3, the BlueZ library
16   libbluetooth-dev, the development files to link to the BluetZ library.
17   Install libraries:
18   sudo apt-get install libbluetooth3
19   sudo apt-get install libbluetooth-dev
20   
21   We are using cmake to create build configurations.
22   Install cmake:
23   sudo apt-get install cmake
24   
25   Also, make sure the g++ compiler is installed:
26   sudo apt-get install g++
27   
28   To start web-based HMI we need web-browser with web-socket RFC6455 support.
29   For example Google Chromium. Install it using:
30   sudo apt-get install chromium-browser
31   
32   To run InterfaceGenerator some python libraries are required and must be
33   installed with following command:
34   sudo pip install -r tools/InterfaceGenerator/requirements.txt
35   
36   For logging Apache log4cxx library is used. Install required packages with the following command:
37   sudo apt-get install liblog4cxx10 liblog4cxx10-dev
38   
39   For installing pulseaudio development files which neededfor audio management fetures run:
40   sudo apt-get install libpulse-dev
41   
42   For installing gstreamer development files which needed for audio management fetures:
43         First add gstreamer repositories to your apt source list (/etc/apt/sources.list):
44         deb http://ppa.launchpad.net/gstreamer-developers/ppa/ubuntu <distributive codename> main
45         deb-src http://ppa.launchpad.net/gstreamer-developers/ppa/ubuntu <distributive codename> main
46         use code name relevant to the Ubuntu version which you use instead of <distributive codename>.
47         Run:
48         sudo apt-get update
49         and:
50         sudo apt-get install gstreamer1.0*      
51  
52 * Build application
53   =================
54   We support "out of sources" concept for build from R3.0.0
55   It means all generated by build tools files will be stored in separate folder.
56   Temporary build of application requires two steps.
57   1. Enter src/thirdPartyLibs/logger
58   build logger:
59
60   1. Create directory outside of SmartDeviceLink project directory.
61   For example "build" folder in the same folder with SmartDeviceLink git repo folder which has a name "git_repo":
62   You will have folders structure like this:
63   /home/projects/smart_device_link
64   |--build
65   |--git_repo
66      |--doc
67      |--src
68      |--test
69      |--DoxyFile
70      \--CMakeLists.txt
71   Enter this folder:
72   cd build
73
74   2. Create build configuration using cmake:
75   2.1 For Debug configuration
76   cmake ../git_repo
77   2.2 For Release configuration, run:
78   cmake -DCMAKE_BUILD_TYPE=Release ../git_repo
79   2.3 For Debug configuration with tests, run:
80   cmake -DBUILD_TESTS=On ../git_repo
81
82   3. Make project:
83   make
84
85   Ready to use release application will be in build/src/appMain/smartDeviceLinkCore
86
87   4. If You built configuration with tests (see 2.3 above), then You can run all project tests and see overall result with:
88   make test
89
90   5. For creating the doxygen documentation run:
91   make doxygen