사용 우분투버전은 16.04 이다. VERSION="16.04.5 LTS (Xenial Xerus)"


sudo apt-get upgrade



기본툴 vim, openssh-server, git 설치


1. 기본 패키지들 설치

 sudo apt-get install gettext expat vim libtool autoconf libudev-dev libgstreamer-plugins-base1.0-dev \

libdbus-1-dev libgl1-mesa-dev libbluetooth-dev libjpeg-dev libpng++-dev


sudo apt-get install cmake cmake-curses-gui libgtest-dev libre2-dev libicu-dev libtag1-dev

sudo apt-get install "^libxcb.*" libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev

sudo apt-get install libdbus-1-dev
sudo apt-get install gstreamer1.0-plugins-* libmedia1 gstreamer1.0-libav
sudo apt-get install libexpat1 libexpat1-dev


2. www.qt.io 접속하여 Qt Source 다운로드및 설치


3. CommonAPI 관련 소스를 다운로드 한다. 


$ git clone https://github.com/GENIVI/capicxx-core-runtime.git

$ git clone https://github.com/GENIVI/capicxx-dbus-runtime.git

$ git clone https://github.com/GENIVI/dlt-daemon.git

$ git clone https://github.com/GENIVI/vsomeip.git

$ git clone https://github.com/GENIVI/capicxx-someip-runtime.git


cd capicxx-core-runtime

git checkout 3.1.12.4


cd capicxx-dbus-runtime

git checkout 3.1.12.7


cd capicxx-someip-runtime
git checkout 3.1.12.11



 1) CAN 관련

mkdir can

cd can

git clone https://github.com/GENIVI/CANdevStudio.git

git clone https://github.com/GENIVI/CANdb.git




dbus 버전정보 확인


$ dpkg -l |grep dbus

ii  at-spi2-core                        2.18.3-4ubuntu1                            amd64        Assistive Technology Service Provider Interface (dbus core)
ii  dbus                                 1.10.6-1ubuntu3.3                          amd64        simple interprocess messaging system (daemon and utilities)
ii  dbus-x11                           1.10.6-1ubuntu3.3                          amd64        simple interprocess messaging system (X11 deps)
ii  libdbus-1-3:amd64               1.10.6-1ubuntu3.3                          amd64        simple interprocess messaging system (library)
ii  libdbus-1-dev:amd64            1.10.6-1ubuntu3.3                          amd64        simple interprocess messaging system (development headers)
ii  libdbus-glib-1-2:amd64         0.106-1                                        amd64        simple interprocess messaging system (GLib-based shared library)
ii  libdbusmenu-glib4:amd64      16.04.1+16.04.20160927-0ubuntu1     amd64        library for passing menus over DBus
ii  libdbusmenu-gtk3-4:amd64    16.04.1+16.04.20160927-0ubuntu1     amd64        library for passing menus over DBus - GTK+ version
ii  libdbusmenu-gtk4:amd64       16.04.1+16.04.20160927-0ubuntu1     amd64        library for passing menus over DBus - GTK+ version
ii  libnet-dbus-perl                   1.1.0-3build1                                 amd64        Perl extension for the DBus bindings
ii  libnih-dbus1:amd64              1.0.3-4.3ubuntu1                            amd64        NIH D-Bus Bindings Library
ii  python3-dbus                     1.2.0-3                                          amd64        simple interprocess messaging system (Python 3 interface)



dbus 소스코드를 받아야한다. [링크]


wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/dbus/1.10.6-1ubuntu3.3/dbus_1.10.6.orig.tar.gz

wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/dbus/1.10.6-1ubuntu3.3/dbus_1.10.6-1ubuntu3.3.debian.tar.xz


다운로드후 두폴더 압축해제
$  cp debian/patches/*.patch dbus-1.10.6/
$ cd dbus-1.10.6/
패치 파일을 적용한다.
 patch -p1 format_string.patch
 patch -p1 < format_string.patch
 patch -p1 < Don-t-abort-on-fatal-warnings-by-default.patch
 patch -p1 < make-uid-0-immune-to-timeout.patch
 patch -p1 < dont-stop-dbus.patch
 patch -p1 < session.conf-system.conf-include-legacy-files-as-.dpkg-ba.patch
 patch -p1 < Doxyfile.in-do-not-put-timestamps-in-HTML-for-reprod.patch

capicxx-dbus-runtime/ 폴더로 이동하여 패치파일들을 적용해야한다.
src/dbus-patches

모든패치 적용

./configure --prefix=/opt/GENIVI/new --with-system-socket=/run/dbus/system_bus_socket
make -C dbus
make -C dbus install
make install-pkgconfigDATA

export PKG_CONFIG_PATH=/opt/GENIVI/new/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=/opt/GENIVI/new/lib:$LD_LIBRARY_PATH


./configure --prefix=/opt/GENIVI/old--with-system-socket=/run/dbus/system_bus_socket

export PKG_CONFIG_PATH=/opt/GENIVI/old/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=/opt/GENIVI/old/lib:$LD_LIBRARY_PATH



 sudo apt-get install libtool autoconf



  • capicxx-core-runtime
mkdir build
cd build
cmake -D CMAKE_INSTALL_PREFIX=/opt/GENIVI/new ..

make -j8

make install


capicxx-dbus-runtime



 cmake -D CMAKE_INSTALL_PREFIX=/opt/GENIVI/new ..


cmake -D CMAKE_INSTALL_PREFIX=/opt/GENIVI/new ..



VSOMIP 설치하기 는 아래글 참고

2018/12/20 - [Embedded/OpenSourceProject] - [GENIVI] vsomip 설치하기



'Embedded > CommonAPI' 카테고리의 다른 글

[GENIVI] ARA integration project  (0) 2019.01.04
[Franca] 작성하고 코드 생성하기  (0) 2019.01.03
[CommonAPI C++] D-Bus binding  (0) 2019.01.03
[CommonAPI] tool 설치 작성중  (0) 2019.01.02
[Dbus] 사용하기  (0) 2018.12.28

+ Recent posts