천재태지의 세상 돌려보기

seoz.egloos.com

- About Me... - Enlightenment, EFL - 타이젠 Tizen



[Tizen] 타이젠 레퍼런스폰 OpenGL이 지원안된다는 Compositor Warnings 발생하는 경우 대처법 (타이젠 2.0) ├ 타이젠 Tizen

[ 타이젠 게시물 목차 : http://seoz.egloos.com/3872102 ]


안녕하세요? 천재태지 서주영입니다.

타이젠 레퍼런스폰에 새로운 이미지를 올리고[1][2] 부팅을 하면 가장 먼저 만나는 메시지가 바로 아래와 같은 "Compositor Warning" 메시지입니다.

타이젠에서 사용하는 Enlightenment 윈도우 매니저는 기본적으로 OpenGL을 사용하도록 설정되어 있습니다. (물론 수동으로 설정을 하면 소프트웨어 렌더링을 사용할 수도 있습니다.) 그런데 타이젠 레퍼런스폰 이미지에는 하드웨어 가속 패키지가 설치되어 있지 않아서 수동으로 패키지를 설치해줘야 합니다.

레퍼런스폰에 Mali DDK를 설치하는 방법은 타이젠 웹사이트[3]에 잘 설명이 되어 있습니다.
한번 이를 따라해보겠습니다.


1. Mali DDK 다운로드

우선 Mali DDK를 다운로드 받아야 합니다. Mali DDK는 아래 링크에서 다운로드 받으실 수 있습니다.

아래 페이지의 "EULA 최종 사용자 사용권" 약관에 동의를 하는 의미로 체크박스를 체크하고 "DOWNLOAD" 버튼을 누르면 Mali DDK가 다운로드 됩니다.


다운로드 받은 Mali DDK가 Downloads 디렉터리에 있다고 가정을 하겠습니다.
아래와 같이 압축을 풉니다.

$ cd Downloads
$ mkdir hw_accel
$ tar xvfz hw_accel.tar.gz -C hw_accel


2. PC와 레퍼런스폰 연결

이제 마이크로 USB를 이용해서 PC와 레퍼런스폰을 연결합니다.
레퍼런스폰을 PC와 연결할 때는 설정 애플리케이션에서 USB 디버깅 옵션을 켜야 합니다.

Settings -> More system settings -> Developer options -> USB debugging

그럼 SDB(Smart Development Bridge) [5] 툴을 이용하여 레퍼런스폰에 파일을 전송하고 터미널로 접속해보겠습니다.
SDB 툴은 타이젠 SDK를 설치할 때 같이 설치됩니다.
물론 타이젠 SDK를 설치할 때 SDB와 같은 개발 도구만 선택적으로 설치할 수도 있습니다.

SDB는 타이젠 SDK가 설치된 디렉터리의 tools 디렉터리에 설치됩니다.
SDB가 설치되는 경로는 타이젠 SDK를 설치할 때 지정한 경로에 따라 다르지만 보통은 ~/tizen-sdk/tools 혹은 ~/tizen/tizen-sdk/tools에 설치가 됩니다.
저는 SDB가 설치된 경로를 PATH 환경 변수에 저장했기 때문에 바로 sdb라는 명령을 실행할 수 있습니다. 여러분도 SDB가 설치된 경로는 PATH 환경 변수에 추가하시기 바랍니다.

그럼 SDB 툴을 이용하여 PC와 레퍼런스폰이 잘 연결됐는지 확인합니다.
아래와 같이 sdb devices 명령을 내렸을 때 연결된 장치가 검색이 되면 PC와 레퍼런스폰이 잘 연결된 것입니다.
"4df71a852a61cf00"와 같은 번호는 기기마다 다를 수 있습니다.

$ sdb devices
List of devices attached
4df71a852a61cf00        device  device-1



3. 레퍼런스폰에 Mali DDK 복사 및 설치

그럼 레퍼런스폰에 Mali DDK를 복사하고 설치해보겠습니다.
~/Downloads/hw_accel 디렉터리를 레퍼런스폰의 /home 디렉터리에 복사합니다.
아래와 같이 에러가 없이 명령이 수행 되면 성공적으로 레퍼런스폰에 Mali DDK 파일을 복사한 것입니다.

$ sdb -d push ~/Downloads/hw_accel /home/

우선 sdb shell 명령어를 이용하여 레퍼런스폰에 터미널로 접속합니다.

$ sdb shell

이제 기존에 있던 OpenGL-ES 가상 드라이버를 삭제하고 Mali DDK를 설치하겠습니다.

# rpm -e --nodeps opengl-es-virtual-drv
# rpm -Uvh --force *.rpm


4. 재부팅 및 확인

모든 작업이 끝났습니다. 아래와 같이 재부팅을 하고 Compositor Warnings 메시지가 더이상 나오지 않는 것을 확인해보겠습니다.

# sync
# reboot -f


위와 같이 명령을 내리면 재부팅이 됩니다.
화면 상에 Compositor Warnings 메시지가 뜨지 않는 것을 확인하면 Mali DDK가 잘 설치된 것입니다.

이제 Enlightenment 윈도우 매니저는 OpenGL을 이용하여 잘 동작하게 되며 OpenGL을 사용하는 애플리케이션은 하드웨어 가속화를 받아서 좋은 성능을 보여줄 수 있습니다.

감사합니다.



[ 타이젠 게시물 목차 : http://seoz.egloos.com/3872102 ]



핑백

덧글

  • 센스쉐프 2013/04/23 07:22 # 삭제 답글

    와 ! 벌써 타이젠 레퍼런스폰을 갖고 계시는 군요.

    아마도 관련 업종에 근무 하시나 보네요.

    타이젠 폰 어떤 모습일지, 얼마나 좋은 걸 보여 줄지 관심 백배입니다.

    좋은 내용 많이 알려 주세요. 화이팅
  • 천재태지서주영 2013/04/23 23:41 #

    안녕하세요? 저도 타이젠의 코어 프레임워크 중 EFL이라는 라이브러리와 관련해서 개발을 하고 있습니다.
    그렇다고 다 레퍼런스폰을 받는 건 아니지만 운이 좋아서 받았어요 ^^
    앞으로 소개해드리고 싶은 부분이 많은데, 시간 관계상 많이 못 전달해드려서 죄송하지만,
    그래서 열심히 좋은 내용 많이 전달할게요 ^^
    감사합니다!
  • won 2014/08/02 17:34 # 삭제 답글

    타이젠에 깔린 어플을 sdb로 지우려면 어떻게 해야하나요?
    명령어를 모르겠습니다 ㅠ
  • 천재태지서주영 2014/08/04 23:01 #

    안녕하세요? 타이젠 에뮬레이터를 사용하시는건가요? 어떻게 애플리케이션을 설치하셨나요?
    보통은 pkgcmd 명령어를 통해서 애플리케이션을 설치하게 되므로, pkgcmd 명령어로 삭제하시면 됩니다.

    $ sdb root on
    $ sdb shell
    # pkgcmd -u -n org.tizen.settings

    이런식으로 해보세요.
  • jinoung 2016/03/04 13:20 # 삭제 답글

    안녕하세요,
    예전에 Android에서는 adb로 실행파일 내려서 바로 실행했던 기억이 있는데요...
    Tizen에서는 sdb로 파일을 target에 push한 후에 실행하면 "-bash: ./hello:No such file or directory"라고 나오네요.

    별로로 packaging을 해야 하나요?
    감사합니다.
  • 천재태지서주영 2016/03/08 22:21 #

    안녕하세요?

    어떤 환경에서 개발하시는 지는 모르겠지만 파일에 실행 권한이 없는 것 같습니다. chmod +x hello를 먼저 해보세요. 레퍼런스 폰이고 올바른 크로스컴파일 환경(예:gbs)에서 빌드를 하셨다면 문제 없이 파일이 실행됩니다.

    감사합니다.
  • 블링블링한 젠투펭귄 2016/03/09 13:00 #

    실행권한은 확인 했었습니다...저는 Ubuntu환경에서 arm-linux-gnueabihf-* 를 이용해서 hello 실행파일을 만들었습니다. Target보드는 ODROID-U3입니다. gbs를 이용해서 빌드를 해야 하나요?
    감사합니다.
  • 천재태지서주영 2016/03/12 00:55 #

    실행 권한이 있는데 그렇게 나오는 건 이상하네요.
    저는 gbs에 있는 crosscompiler만 써봤어요. 그 땐 문제 없었습니다.
댓글 입력 영역