DirectFB 설치 및 샘플코드 실행관련 질문
어찌어찌 이틀동안 우여곡절끝에 라이브러리 설치하고
샘플코드도 가져다가 컴파일까지 마쳤습니다.
실행을 시켜보니 아래와 같은 메세지가 나오는데 무슨 문제일까요?
요거 나오기전엔 Initialize 할수 없다고 FRAMEBUFFER옵션을 설정하라고 나오길래
FRAMEBUFFER = /dev/fb0 로 설정했는데
이젠 아래와 같이 나오네요...어찌해야할지...
누가 이 삽질을 끝내주셨으면 좋겠습니다. OTL
=======================| DirectFB 1.0.0 |=======================
(c) 2001-2007 The DirectFB Organization (directfb.org)
(c) 2000-2004 Convergence (integrated media) GmbH
------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2007-08-07 02:24)
(!) DirectFB/FBDev: Error opening '/dev/fb0'!
--> No such device
(!) DirectFB/Core: Could not initialize 'system' core!
--> Not supported!
direct.c <27>:
(#) DirectFBError [DirectFBCreate (&dfb)]: Not supported!
/dev/fb0 은 있습니까?
/dev/fb0 은 있습니까?
========================
조직 : E.L.D(Embedded Linux Developer/Designer)
블로그 : poplinux@tistory.com
카페 : cafe.naver.com/poplinux
임베디드 리눅스 관련 프리렌서 지향
있습니다.
예 있습니다. ^^
요렇게 되어있습니다.
[root@testda root]# ls -al /dev/fb0
crw-rw-rw- 1 root root 29, 0 6월 25 2004 /dev/fb0
한가지더...
소스코드를 보니 커멘드라인 파리미터로 값을 전달하도록 되어있던데
파라미터가 잘못되서 그럴 수도 있을까요?
아무 내용없이 그냥 실행시켰는데...
...생략
DFBCHECK(DirectFBInit (&argc, &argv));
...생략
아 한가지 더있네요...
directfb.org 사이트를 좀더 뒤져보니
Usage Requirement에 fbset -i 의 결과가 어던지 확인해보라 하더군요...
결과는...
No such device 입니다.
이제 어케해야 할까요...OTL
너무 늦은 것 같습니다만...
커널의 부팅 옵션에 frame buffer를 사용하도록 설정해 줘야 합니다.
예를 들어 grub를 사용하시면 grub.conf에 가셔서 커널 부팅 옵션에 "vga=791" 을 적어 주셔야 해요.
자세한 내용은 directfb 소스안의 README를 읽어 보시길...
저도 너무 늦은것 같지만, 다른 분들을 위해 적어봅니다.
device 에러 , 즉 /dev/fb 관련 에러는
님의 리눅스에 Frame Buffer 가 셋팅되어있지 않아서 그렇습니다.
/etc/grup.conf 에 가시면 부트로더 이미지(?)가 있을겁니다.
title.....
kernel.........ro vga=791 , 꼭 그런지 모르겠는데, 이왕이면 ro 뒤에 쓰세요..
Colours 640x400 640x480 800x600 1024x768 1152x864 1280x1024 1600x1200
--------+--------------------------------------------------------------
4 bits | ? ? 0x302 ? ? ? ?
8 bits | 0x300 0x301 0x303 0x305 0x161 0x307 0x31C
15 bits | ? 0x310 0x313 0x316 0x162 0x319 0x31D
16 bits | ? 0x311 0x314 0x317 0x163 0x31A 0x31E
24 bits | ? 0x312 0x315 0x318 ? 0x31B 0x31F
32 bits | ? ? ? ? 0x164 ?
참고하시죠
0x 방식으로 입력해도 됩니다.
1280x 이.....생각이 안나넹...;;
소스코드 readme 파일에 보시면 나와있어요
gg
directfb 예제실행 질문입니다.
parkseonghee@ubuntu:/usr/local/bin$ ls
df_andi dfbmaster df_flip df_palette directfb-csource
dfbdump dfbpenmount df_fonts df_particle libpng12-config
dfbfx dfbscreen df_input df_porter libpng-config
dfbg df_cpuload df_joystick df_stress mkdfiff
dfbinfo df_databuffer df_knuckles df_texture mkdgiff
dfbinput df_dioload df_layer df_video pss
dfbinspector df_dok df_matrix df_video_particle spacedream
dfblayer df_drivertest df_neo df_window
df_bltload df_fire df_netload directfb-config
parkseonghee@ubuntu:/usr/local/bin$ ./df_dok
~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.2.9 |~~~~~~~~~~~~~~~~~~~~~~~~~~
(c) 2001-2008 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH
----------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2013-01-27 05:17)
(!) Direct/Util: opening '/dev/fb0' failed
--> Permission denied
(!) DirectFB/FBDev: Error opening framebuffer device!
(!) DirectFB/FBDev: Use 'fbdev' option or set FRAMEBUFFER environment variable.
(!) DirectFB/Core: Could not initialize 'system_core' core!
--> Initialization error!
df_dok.c <1457>:
(#) DirectFBError [DirectFBCreate( &dfb )]: Initialization error!
parkseonghee@ubuntu:/usr/local/bin$ sudo ./df_dok
[sudo] password for parkseonghee:
~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.2.9 |~~~~~~~~~~~~~~~~~~~~~~~~~~
(c) 2001-2008 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH
----------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2013-01-27 05:17)
(*) Direct/Thread: Started 'VT Switcher' (-1) [CRITICAL OTHER/OTHER 0/0] <8388608>...
(*) Direct/Thread: Started 'Keyboard Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
(*) DirectFB/Input: Keyboard 0.9 (directfb.org)
(*) Direct/Thread: Started 'PS/2 Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
(*) DirectFB/Input: IMPS/2 Mouse (1) 1.0 (directfb.org)
(*) Direct/Thread: Started 'PS/2 Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
(*) DirectFB/Input: IMPS/2 Mouse (2) 1.0 (directfb.org)
(*) Direct/Thread: Started 'Linux Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
(*) DirectFB/Input: Power Button (1) 0.1 (directfb.org)
(*) Direct/Thread: Started 'Linux Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
(*) DirectFB/Input: Sleep Button (2) 0.1 (directfb.org)
(*) Direct/Thread: Started 'Linux Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
(*) DirectFB/Input: AT Translated Set 2 keyboard (3) 0.1 (directfb.org)
(*) Direct/Thread: Started 'Linux Input' (-1) [INPUT OTHER/OTHER 0/0] <8388608>...
(*) DirectFB/Input: ImExPS/2 Generic Explorer Mouse (4) 0.1 (directfb.org)
(*) DirectFB/Genefx: MMX detected and enabled
(*) DirectFB/Graphics: MMX Software Rasterizer 0.6 (directfb.org)
(*) DirectFB/Core/WM: Default 0.3 (directfb.org)
(*) FBDev/Mode: Setting 800x600 RGB32
(*) FBDev/Mode: Switched to 800x600 (virtual 800x600) at 32 bit (RGB32), pitch 3200
(*) FBDev/Surface: Allocated 800x600 32 bit RGB32 buffer (index 0) at offset 0 and pitch 3200.
df_dok.c <1502>:
(#) DirectFBError [dfb->CreateImageProvider( dfb, DATADIR"/biglogo.png", &provider )]: No (suitable) implementation found!
(!!!) *** WARNING [Application exited without deinitialization of DirectFB!] *** [core.c:859 in dfb_core_deinit_check()]
(!!!) *** WARNING [still objects in 'Layer Region Pool'] *** [object.c:241 in fusion_object_pool_destroy()]
(!!!) *** WARNING [still objects in 'Layer Context Pool'] *** [object.c:241 in fusion_object_pool_destroy()]
(!!!) *** WARNING [still objects in 'Surface Pool'] *** [object.c:241 in fusion_object_pool_destroy()]
참고링크 : http://blog.naver.com/PostView.nhn?blogId=y851004&logNo=20063548168&widgetTypeCall=true
http://blog.naver.com/PostView.nhn?blogId=antoniobald&logNo=50143834430
여기 두곳을 참고해서 directfb를 사용하려고 하는데요,, 위와 같은 오류가 뜹니다. 원인을 몰라서 해매고있네요..
도와주시면 감사하겠습니다.
댓글 달기