자료 정리 및 파악중



afb-daemon


http://paume-no-ki.hatenablog.com/entry/2017/10/07/121334


 git clone https://gerrit.automotivelinux.org/gerrit/src/app-framework-main 


cmake .. -DCMAKE_INSTALL_PREFIX=/opt/afm-daemon


--   No package 'openssl' found

--   No package 'xmlsec1' found

--   No package 'xmlsec1-openssl' found



http://paume-no-ki.hatenablog.com/entry/2017/10/07/121334


-- Checking for module 'libzip>=0.11'

--   No package 'libzip' found

-- Checking for module 'libsystemd>=222'

--   No package 'libsystemd' found

-- Checking for modules 'afb-daemon>=4.99;libafbwsc>=4.99'

--   No package 'afb-daemon' found

--   No package 'libafbwsc' found

-- Checking for module 'security-manager'

--   No package 'security-manager' found

CMake Error at /usr/share/cmake-3.10/Modules/FindPkgConfig.cmake:415 (message):

  A required package was not found

Call Stack (most recent call first):

  /usr/share/cmake-3.10/Modules/FindPkgConfig.cmake:593 (_pkg_check_modules_internal)

  src/CMakeLists.txt:84 (pkg_check_modules)



-- Configuring incomplete, errors occurred!





-- Checking for module 'libzip>=0.11'

--   No package 'libzip' found

-- Checking for module 'libsystemd>=222'

--   No package 'libsystemd' found

-- Checking for modules 'afb-daemon>=4.99;libafbwsc>=4.99'

--   No package 'afb-daemon' found

--   No package 'libafbwsc' found

-- Checking for module 'security-manager'

--   No package 'security-manager' found





링크 참조

https://qiita.com/propella/items/0258163c18a506f12a55

https://github.com/iotbzh/agl-homescreen



'Linux > Yocto' 카테고리의 다른 글

[Yocto] Protobuf Build Error  (0) 2018.04.11
[Linux] fsck  (0) 2017.11.30
[Yocto] syslog제거  (0) 2017.11.11
[Yocto] 추가 관련건  (0) 2016.12.22

https://www.joinc.co.kr/w/Site/Development/Forum/manager/gitserver




 sudo adduser git-admin


 sudo adduser git-repo


sudo su - git-repo

'Linux' 카테고리의 다른 글

정적라이브러리, 동적라이브러리  (0) 2018.07.19
[Linux] 오픈소스 웹 스트리밍 감시카메라  (0) 2018.07.13
[Linux]Samba 설정  (0) 2017.10.06
[libudev] 함수정리  (0) 2017.04.18
Gstreamer 파이프라인 디버깅  (0) 2017.04.14

정적라이브러리와 동적라이브

http://sens.tistory.com/33


'Linux' 카테고리의 다른 글

git 서버설치  (0) 2018.07.20
[Linux] 오픈소스 웹 스트리밍 감시카메라  (0) 2018.07.13
[Linux]Samba 설정  (0) 2017.10.06
[libudev] 함수정리  (0) 2017.04.18
Gstreamer 파이프라인 디버깅  (0) 2017.04.14



 V4L2 image capture operation flowchart


1. v4l2 Device Open

2. 디바이스의 지원여부 확인

3. 이미지 포맺설정

4. 


사진출처 

 https://www.researchgate.net/publication/324172011



File 

https://elinux.org/images/1/13/Gabrielhuau.pdf


file:///home/kj/Downloads/Mobile-Device-Combine-the-Study-of-Image-Track-and-Surveillance-Monitor-System.pdf


'Linux > gstreamer' 카테고리의 다른 글

Gstreamer 링크  (0) 2017.04.05

오픈소스 웹 스트리밍 감시카메라



sudo apt-get install libjpeg8-dev imagemagick libv4l-dev subversion


svn checkout svn://svn.code.sf.net/p/mjpg-streamer/code mjpg-streamer


cd mjpg-streamer/mjpg-streamer



make -j2

./start.sh


웹페이지를 통해 접속 ip:8080


'Linux' 카테고리의 다른 글

git 서버설치  (0) 2018.07.20
정적라이브러리, 동적라이브러리  (0) 2018.07.19
[Linux]Samba 설정  (0) 2017.10.06
[libudev] 함수정리  (0) 2017.04.18
Gstreamer 파이프라인 디버깅  (0) 2017.04.14

systemd 관련하여 재정리를 시작한다.



요약하면 systemd 는 부팅 중 시작하는 서비스(혹 데몬)들을 관리하는 놈이라고 볼수 있다.


부팅 시점에 정의해논 서비스들을 병렬적으로 실행 할 수 있다. 특정 서비스 동작후에 원하는 서비스가 동작하도록 정의할수 있지만 명확한 타이밍에 동작 가능하도록 하는것은 아직 모르겠다.



우분투 15.04 부터 upstart-job 대신 systemd 를 사용하고 있다. 
이전까지 리눅스는 PID 1번 프로세스가 가장 먼저 실행되어 OS 에 필요한 각종 데몬들을 init 하였다.

이전에는 서비스 실행,중지를 service <service name> start | stop | restart 의 명령으로 제어했으나, systemd 를 사용하는 시스템에서는 systemctl start | stop | restart <unit name> 으로 관리하게 된다.
upstart-job에서는 데몬들을 service라는 네이밍을 붙였고, systemd에서는 unit이라는 이름을 사용한다.
systemd에서는 <unit name>.service이라는 파일을 systemctl enable [<unit name>.service] or [unit name] 명령으로 설치를 할 수 있다.(ini 포맷사용)
systemctl enable [unit name] 명령어를 실행하면 관련 서비스를 /etc/systemd/system/[target]/ 경로에 링크파일을 생성한다.
systemctl disable[unit name] 명령어를 실행하면 링크파일을 삭제한다.

  1. systemd는 최소한의 서비스만을 실행시키고 병렬화해서 실행시키는데 주안점을 두고 있기 때문에 기존에 순차적 방식으로 처리하는 SysV에 비해서 부팅속도가 빠른 편이다.
  2. 부팅 시간을 단축 시킬(즉, 불필요한 프로세스가 있는지 여부부터 오동작으로 인해 시간을 많이 잡아먹는지) 방안에 대해서 생각해 볼 수 있다.


  • systemctl 명령어 

   systemd 와 관련된 명령어를 수행한다.

 $ systemctl == $systemctl list-units // 동일한 명령으로 list-units 들을 보여준다


  • 런레벨은 target 으로 관리
systemd는 기존 init 커맨드와 달리 숫자 기반의 런레벨이 아니라 각 런레벨에 대한 설정 세트를 통해서 런레벨을 변경한다.


SysV Runlevel 

Systemd Target 

Notes 

 0

runlevel0.target, poweroff.target 

시스템을 중지 

 1,s, single

 runlevel1.target, rescue.target

단일 사용자 모드 

 2, 4

runlevel2.target, runlevel4,target, multi-user.target

사용자 정의, 기본 3과 동일 

 3

 runlevel3.target , multi-user.target

다중 사용자, 그래픽 사용하지않음. 사용자는 콘솔이나 네트워크를 통해 다중 접속할 수 있다. 

 5

runlevel5.target, graphical.target 

 다중사용자, 그래픽. 런레벨3에서 그래픽 추가된 서비스를 제공

 6

runlevel6.target, reboot.target 

 재부팅

emvergency 

emergency.target 

Emergency shell 



현재 사용하는 런레벨을 확인한다.

# systemctl get-default

graphical.target



  • 로그관리 (syslog 에서 지정하는 debug, info, err 등) 조회도 가능하다.

       # journalctl -p err >> err


  • 유용한 명령어
    1. systemd-analyze : 부팅에 걸린시간 표시 (tcc8935 없음)
    2. systemd-analyze blame : 부팅시 서비스별 걸린 시간표시 (tcc8935 없음)
    3. journalctl : 부팅을 포함한 전체적인 시스템 로그
    4. journalctl -b : 마지막 부팅 이후 시스템 로그
    5. hostnamectl : 호스트 이름표시
    6. hostnamectl set-hostname [변경이름] : 호스트이름 변경




  • 서비스 파일 등록하는 법
    • 부팅시 서비스가 실행하게 된다.
    • 재부팅시 적용됨
    • /lib/system/systemd 폴더와 /etc/systemd/system 폴더 안에 관련 파일을 확인하고 각 시스템 폴더에 링크파일을 생성해 주는 역할을 한다. 
      $ systemctl enable [serviceName|serviceName.service]
      $ systemctl enable XX 나 systemctl enable XX.service

  • 서비스 파일 해제하는 법
    • 서비스가 등록된 링크파일을 삭제한다.
    • 재부팅시 적용됨
      $ systemctl disable [serviceName|serviceName.service]
      $ systemctl disable XX 나 systemctl disable XX.service
  • 관련 서비스 start
    • 관련된 시스템이 동작하도록 한다.
    • 현재 각 서비스 파일을 보면 Restart=on-failure 로 등록되어 어서 앱이 죽거나 kill 시 자동 restart 되어지고 있다. 재실행하지 않으려면 주석처리 -> #Restart=on-failure
      $ systemctl start XX

  • 관련 서비스 stop
    • 관련된 시스템을 중지시킨다.
    • 서비스가 동작시 해당 어플리케이션 파일을 변경시킬 수 없다. 소스변경이 이루어질시 해당 하는 서비스를 중지시키고 해야함.
      $ systemctl stop XX

참고 


'Linux > Systemd' 카테고리의 다른 글

[SYSTEMD] INSTALL 섹션 옵션  (0) 2016.07.18
[Systemd] Unit .mount 설명  (0) 2016.07.12
journalctl 정의  (0) 2016.07.12
Systemd 내용  (2) 2016.06.15


다음에러와 유사

>> | /local/mnt/workspace/narasimha/AGL_NEW/poky/build/tmp-glibc/work/aarch64-poky-linux/glibc/2.22-r0/git/csu/elf-init.c:87: undefined reference to `__init_array_start'
>> | /local/mnt/workspace/narasimha/AGL_NEW/poky/build/tmp-glibc/work/aarch64-poky-linux/glibc/2.22-r0/git/csu/elf-init.c:87: undefined reference to `__init_array_end'


poky

./meta/conf/distro/include/security_flags.inc 관련부분에 플레그 추가

protobuf 추가



SECURITY_CFLAGS_pn-protobuf = "${SECURITY_NO_PIE_CFLAGS}"


완료됨.


'Linux > Yocto' 카테고리의 다른 글

afb-daemon  (0) 2018.08.10
[Linux] fsck  (0) 2017.11.30
[Yocto] syslog제거  (0) 2017.11.11
[Yocto] 추가 관련건  (0) 2016.12.22


참고  : https://lists.yoctoproject.org/pipermail/meta-freescale/2017-January/019965.html


[meta-freescale] [PATCH v2 5/5] weston: Touch events cause startup failure

Wayland 동작시 터치 디바이스 이벤트가 발생하면  죽는 현상 발생

view 에 대한 예외처리가 추가되어 weston 초기화시 터치가 발생하여도 문제가 발생하지 않음


동작 확인 
감사합니다.

vim src/compositor.c


src/compositor.c:1373:weston_view_from_global_fixed(struct weston_view *view


view 에 따른 예외처리 추가됨.


if(view != NULL) {

                weston_view_from_global_float(view,

                                                wl_fixed_to_double(x),

                                                wl_fixed_to_double(y),

                                                &vxf, &vyf);

                *vx = wl_fixed_from_double(vxf);

                *vy = wl_fixed_from_double(vyf);

 }





현재버전 1.9

https://gerrit.automotivelinux.org/gerrit/#/c/11203/2/meta-agl/recipes-graphics/wayland/weston/0001-compositor-drm.c-Launch-without-input-devices.patch


drm 초기화시 터치 디바이스를 확인하여 없을시 종료루틴 실행.


3073 static struct drm_backend *

3074 drm_backend_create(struct weston_compositor *compositor,

3075                       struct drm_parameters *param,

3076                       int *argc, char *argv[],

3077                       struct weston_config *config)

 

3171 //              goto err_sprite; 주석처리


 Input Device 에 따른 리턴처리 됨 강제적으로 GUI 를 출력하기위해서 코드 적용 완료 






'Linux > Wayland' 카테고리의 다른 글

[weston] Touch  (0) 2017.12.30
[Wayland] Install Ubuntu14.04  (0) 2017.07.09
Wayland FAQ  (0) 2016.06.23
wayland 관련 정보 참고 사이트  (0) 2016.06.20

http://wiki.qt.io/WestonTouchScreenIssues


From c4633014fff25d32926129a8b028124c6338bb2b Mon Sep 17 00:00:00 2001
From: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
Date: Wed, 19 Aug 2015 09:04:46 +0300
Subject: [PATCH 1/1] Adapt changes made in libinput/src/evdev.c for touch
 frame emission.

---
 src/evdev.c | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/src/evdev.c b/src/evdev.c
index 888dfbd..daa5d72 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -359,12 +359,36 @@ evdev_process_absolute(struct evdev_device *device,
 	}
 }
 
+static inline int
+evdev_need_touch_frame(struct evdev_device *device)
+{
+	if (!(device->seat_caps & EVDEV_SEAT_TOUCH))
+		return 0;
+
+	switch (device->pending_event) {
+	case EVDEV_NONE:
+	case EVDEV_RELATIVE_MOTION:
+		break;
+	case EVDEV_ABSOLUTE_MT_DOWN:
+	case EVDEV_ABSOLUTE_MT_MOTION:
+	case EVDEV_ABSOLUTE_MT_UP:
+	case EVDEV_ABSOLUTE_TOUCH_DOWN:
+	case EVDEV_ABSOLUTE_TOUCH_UP:
+	case EVDEV_ABSOLUTE_MOTION:
+		return 1;
+	}
+
+	return 0;
+}
+
 static void
 fallback_process(struct evdev_dispatch *dispatch,
 		 struct evdev_device *device,
 		 struct input_event *event,
 		 uint32_t time)
 {
+	int need_frame = 0;
+
 	switch (event->type) {
 	case EV_REL:
 		evdev_process_relative(device, event, time);
@@ -376,7 +400,10 @@ fallback_process(struct evdev_dispatch *dispatch,
 		evdev_process_key(device, event, time);
 		break;
 	case EV_SYN:
+		need_frame = evdev_need_touch_frame(device);
 		evdev_flush_pending_event(device, time);
+		if (need_frame)
+			notify_touch_frame(device->seat);
 		break;
 	}
 }
--  

2.1.4 


libinput multi touch 




https://cgit.freedesktop.org/wayland/libinput


'Linux > Wayland' 카테고리의 다른 글

[weston] Boot touch ISSUE  (0) 2018.02.12
[Wayland] Install Ubuntu14.04  (0) 2017.07.09
Wayland FAQ  (0) 2016.06.23
wayland 관련 정보 참고 사이트  (0) 2016.06.20

fsck 




찾기


fsck fat32


fsck                   fsck.ext3              fsck.ext4dev           fsck.minix.util-linux  fsg                    

fsck.ext2              fsck.ext4              fsck.minix             fsck.util-linux



fsck.fat 


dosfstools_2.11.bb



/meta/recipes-devtools/dosfstools/dosfstools_2.11.bb



두개의 파일이 존재한다

dosfsck

 - FAT 파일시스템 점검* 복구 명령어

 - MS-DOS 파일시스템을 점검*복구하는 리눅스 명령어



리눅스 dosfsck -제타위키 - https://zetawiki.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_dosfsck


'Linux > Yocto' 카테고리의 다른 글

afb-daemon  (0) 2018.08.10
[Yocto] Protobuf Build Error  (0) 2018.04.11
[Yocto] syslog제거  (0) 2017.11.11
[Yocto] 추가 관련건  (0) 2016.12.22

+ Recent posts