레시피 파악

meta-ivi layer 에 존재한다.


meta-ivi/meta-ivi/recipes-graphics/wayland


wayland-ivi-extension_2.1.bb



의존성 : wston wayland-native

빌드 옵션 : "-DWITH_ILM_INPUT=1":q


weston_%.bbappend


Ubuntu 16.04 에 설치 

  • 다운로드 wayland-ivi-extension
git clone http://github.com/GENIVI/wayland-ivi-extension.git

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

wayland/1.14.0 필요



wayland 다운로드

$ wget https://wayland.freedesktop.org/releases/wayland-protocols-1.17.tar.xz


./configure
sudo make install
wget https://wayland.freedesktop.org/releases/wayland-1.16.0.tar.xz

 ./autogen.sh --prefix=PREFIX


sudo apt-get install libffi-dev

make -j8
make install

$ wayland-scanner --version
wayland-scanner 1.16.0

설치 완료후 환경변수 추가


웨스턴 설치시 문제생김

pkg_check_modules(WAYLAND_SERVER wayland-server>=1.13.0 REQUIRED)

pkg_check_modules(WESTON weston>=5.0.0 REQUIRED)

pkg_check_modules(PIXMAN pixman-1 REQUIRED)


버전문제로 버전 2.1.0 으로 변경함

이 버전에서는 weston 버전문제가 발생함
pkg_check_modules(WESTON weston>=2.0.0 REQUIRED)
pkg_check_modules(PIXMAN pixman-1 REQUIRED)

$ sudo apt-get install libjpeg-dev
$ sudo apt-get install libwebp-dev


공유

  --enable-screen-sharing


./configure --prefix=/opt/GENIVI/new/wayland/ --enable-screen-sharing   --enable-xwayland --enable-xwayland-test --enable-x11-compositor --enable-demo-clients-install



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


컴파일에러

[  8%] Building C object weston-ivi-shell/CMakeFiles/ivi-controller.dir/src/ivi-controller.c.o

/home/kj/GDP_ivis/westonAPI/wayland-ivi-extension/weston-ivi-shell/src/ivi-controller.c: In function ‘controller_screenshot_notify’:

/home/kj/GDP_ivis/westonAPI/wayland-ivi-extension/weston-ivi-shell/src/ivi-controller.c:1280:42: error: incompatible type for argument 7 of ‘ivi_screenshot_send_done’

                              shm_format, output->frame_time);

                                          ^

In file included from /home/kj/GDP_ivis/westonAPI/wayland-ivi-extension/weston-ivi-shell/src/ivi-controller.c:39:0:

/home/kj/GDP_ivis/westonAPI/wayland-ivi-extension/build/weston-ivi-shell/ivi-wm-server-protocol.h:314:1: note: expected ‘uint32_t {aka unsigned int}’ but argument is of type ‘struct timespec’

 ivi_screenshot_send_done(struct wl_resource *resource_, int32_t fd, int32_t width, int32_t height, int32_t stride, uint32_t format, uint32_t timestamp)

 ^

weston-ivi-shell/CMakeFiles/ivi-controller.dir/build.make:70: recipe for target 'weston-ivi-shell/CMakeFiles/ivi-controller.dir/src/ivi-controller.c.o' failed

make[2]: *** [weston-ivi-shell/CMakeFiles/ivi-controller.dir/src/ivi-controller.c.o] Error 1

CMakeFiles/Makefile2:173: recipe for target 'weston-ivi-shell/CMakeFiles/ivi-controller.dir/all' failed

make[1]: *** [weston-ivi-shell/CMakeFiles/ivi-controller.dir/all] Error 2

Makefile:127: recipe for target 'all' failed

make: *** [all] Error 2



1279 //    ivi_screenshot_send_done(l->screenshot, fd, width, height, stride, shm_format,( (uint32_t)output->frame_time));
1280     ivi_screenshot_send_done(l->screenshot, fd, width, height, stride, shm_format, (uint32_t)0);
changed
1279 //    ivi_screenshot_send_done(l->screenshot, fd, width, height, stride, shm_format,( (uint32_t)output->frame_time));
1280     ivi_screenshot_send_done(l->screenshot, fd, width, height, stride, shm_format,( (uint32_t)output->frame_time.tv_nsec));

error free 
$ vim /home/kj/GDP_ivis/westonAPI/wayland-ivi-extension/ivi-layermanagement-examples/LayerManagerControl/src/print.cpp

#include <cstdlib>


make 

sudo make install


-- Install configuration: ""

-- Up-to-date: /opt/GENIVI/new/weston-extention/lib/libivi-application.so.2.1.0

-- Up-to-date: /opt/GENIVI/new/weston-extention/lib/libivi-application.so

-- Up-to-date: /opt/GENIVI/new/weston-extention/include/ilm/ivi-application-client-protocol.h

-- Up-to-date: /opt/GENIVI/new/weston-extention/share/wayland-protocols/stable/ivi-application/ivi-application.xml

-- Installing: /pkgconfig/ivi-application.pc

-- Installing: /opt/GENIVI/new/weston-extention/lib/weston/ivi-controller.so

-- Set runtime path of "/opt/GENIVI/new/weston-extention/lib/weston/ivi-controller.so" to ""

-- Installing: /opt/GENIVI/new/weston-extention/lib/libilmCommon.so.2.1.0

-- Installing: /opt/GENIVI/new/weston-extention/lib/libilmCommon.so

-- Set runtime path of "/opt/GENIVI/new/weston-extention/lib/libilmCommon.so.2.1.0" to ""

-- Installing: /opt/GENIVI/new/weston-extention/include/ilm/ilm_common.h

-- Installing: /opt/GENIVI/new/weston-extention/include/ilm/ilm_types.h

-- Installing: /opt/GENIVI/new/weston-extention/include/ilm/ilm_platform.h

-- Installing: /pkgconfig/ilmCommon.pc

-- Installing: /opt/GENIVI/new/weston-extention/lib/libilmClient.so.2.1.0

-- Installing: /opt/GENIVI/new/weston-extention/lib/libilmClient.so

-- Set runtime path of "/opt/GENIVI/new/weston-extention/lib/libilmClient.so.2.1.0" to ""

-- Installing: /opt/GENIVI/new/weston-extention/include/ilm/ilm_client.h

-- Installing: /opt/GENIVI/new/weston-extention/lib/libilmControl.so.2.1.0

-- Installing: /opt/GENIVI/new/weston-extention/lib/libilmControl.so

-- Set runtime path of "/opt/GENIVI/new/weston-extention/lib/libilmControl.so.2.1.0" to ""

-- Installing: /opt/GENIVI/new/weston-extention/include/ilm/ilm_control.h

-- Installing: /pkgconfig/ilmControl.pc

-- Installing: /opt/GENIVI/new/weston-extention/bin/LayerManagerControl

-- Set runtime path of "/opt/GENIVI/new/weston-extention/bin/LayerManagerControl" to ""

-- Installing: /opt/GENIVI/new/weston-extention/bin/EGLWLMockNavigation

-- Set runtime path of "/opt/GENIVI/new/weston-extention/bin/EGLWLMockNavigation" to ""

-- Installing: /opt/GENIVI/new/weston-extention/bin/EGLWLInputEventExample

-- Set runtime path of "/opt/GENIVI/new/weston-extention/bin/EGLWLInputEventExample" to ""

-- Installing: /opt/GENIVI/new/weston-extention/bin/layer-add-surfaces

-- Set runtime path of "/opt/GENIVI/new/weston-extention/bin/layer-add-surfaces" to ""

-- Installing: /opt/GENIVI/new/weston-extention/bin/multi-touch-viewer

-- Set runtime path of "/opt/GENIVI/new/weston-extention/bin/multi-touch-viewer" to ""

-- Installing: /opt/GENIVI/new/weston-extention/bin/simple-ivi-share

-- Set runtime path of "/opt/GENIVI/new/weston-extention/bin/simple-ivi-share" to ""

-- Installing: /opt/GENIVI/new/weston-extention/bin/simple-weston-client

-- Set runtime path of "/opt/GENIVI/new/weston-extention/bin/simple-weston-client" to ""


weston 5.0.0

wayland1.16.0 설치 완료


wayland-ivi-extension 설치완료

ilmCommon.pc  ilmControl.pc  ivi-application.pc


최신버전으로 다시설치

cmake -DCMAKE_INSTALL_PREFIX=/opt/GENIVI/new/ivi-layer-master ..



'Embedded > GDP구조파악' 카테고리의 다른 글

[GDP] hmi-layout-gdp 파악(gdp-hmi)  (0) 2019.01.08


저장소 : git clone git://github.com/GENIVI/hmi-layout-gdp.git


커및정보

commit 86f5a365a0b1c4cd96a6344db7137a0440c11f7b

Author: Gunnar Andersson <gandersson@genivi.org>

Date:   Wed May 30 11:22:35 2018 +0200 


/home/kj/GDP_ivis/hmi-layout-gdp 경로에 다운로드함.


genivi-dev-platform/meta-genivi-dev/meta-genivi-dev/recipes-dev-hmi/genivi-dev-platform-hmi

 gdp-new-hmi.bb



의존성

    dbus-c++ \

    ivi-logging \

    qtbase \

    qtdeclarative \

    qtquick1 \

    systemd \

    wayland-ivi-extension \ qtbase qtsvg


설치시 추가파일

    install -d ${D}${systemd_user_unitdir}

    install -p -D ${WORKDIR}/gdp-new-hmi.service ${D}${systemd_user_unitdir}/gdp-new-hmi.service

    install -d ${D}${sysconfdir}/systemd/user/default.target.wants

    ln -sf ${systemd_user_unitdir}/gdp-new-hmi.service ${D}${sysconfdir}/systemd/user/default.target.wants


    install -d ${D}${bindir}

    mv ${D}/opt/gdp-hmi/bin/gdp-hmi ${D}${bindir}/gdp-hmi

    

    ${libdir}/qt5/qml/com/genivi/ \

    ${systemd_user_unitdir}/gdp-new-hmi.service \



'Embedded > GDP구조파악' 카테고리의 다른 글

[GENIVI] wayland-ivi-extension  (0) 2019.01.09

+ Recent posts