천재태지의 세상 돌려보기

seoz.egloos.com

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



[EFL/E17] EFL 및 E17 빌드 및 설치 (우분투 12.04) ├ Enlightenment, EFL

[ EFL 게시물 목차 : http://seoz.egloos.com/3458699 ]

(최종 업데이트 : 2013/01/28)

(이 내용은 더이상 유효하지 않습니다.
해당 글을 참고해주세요. )


안녕하세요? 천재태지 서주영입니다.
최근 여러 EFL 라이브러리가 한 디렉터리로 통합되는 과정이 진행됨에 따라 빌드 방법 및 필수 설치 패키지가 변경되었습니다.

이에 따라 배포판 별로 설치 방법이 조금씩 다르기 때문에 기존에 하나였던[1] EFL 및 E17 빌드 및 설치 포스팅을 우분투 12.10 버전[10]12.04 버전[13]으로 나눕니다. 12.04 이전 버전은 이미 공식적인 지원이 끝났기 때문에 저도 설명하지 않겠습니다.

이 포스팅은 우분투 12.04를 위한 글입니다.

EFL을 새로 설치하기에 앞서 우선 이전에 설치해둔 EFL 라이브러리가 있으면 충돌이 나지 않도록 미리 삭제합니다.
그 후 아래 과정을 순서대로 참고해주세요.


1. 소스코드 다운로드

EFL 소스코드 빌드에 앞서 EFL 소스코드를 다운받습니다.
이 부분은 아래 강좌를 참고하세요.



2. 필요한 패키지 설치

빌드 스크립트를 실행하기 전에, 빌드 및 실행에 필요한 패키지들을 설치합니다.
아래 패키지는 EFL 을 빌드하거나 실행하는데 필요한 패키지입니다.
저는 하나하나 삽질을 통해서 필요한 패키지를 찾았습니다만 앞으로는 그럴 필요 없이, 아래 패키지를 미리 설치해주세요.
기존에는 선택적으로 설치를 해도 되는 패키지들이 최근 EFL 변경 사항에 따라서 필수적으로 설치해야 되도록 변경되었습니다.
이에 따라 아래 패키지를 꼭 설치해주시기 바랍니다.

단, autogen.sh을 실행할 때 옵션을 주면 일부 패키지는 필요가 없을 수도 있습니다.
예: $ ./autogen.sh --disable-physics 라고 옵션을 주면 libbullet-dev 패키지는 필요가 없습니다.

~/trunk $ sudo apt-get install build-essential automake libtool ccache zlib1g-dev libfreetype6-dev libdbus-1-dev liblua5.1-0-dev g++ libxext-dev libxrender-dev libpng12-dev libxrandr-dev libfontconfig1-dev libxcb-shape0-dev libfribidi-dev libcurl4-openssl-dev libxcb-keysyms1-dev libjpeg-dev gettext autopoint libgif-dev libtiff4-dev libxp-dev libxtst-dev libgl1-mesa-dev libxinerama-dev libxdamage-dev libxcursor-dev libglib2.0-dev libxcomposite-dev libxss-dev libpulse-dev libsndfile-dev libudev-dev libblkid-dev libmount-dev libgstreamer0.10-dev check libgstreamer-plugins-base0.10-dev


3. 빌드 스크립트 작성

기본적인 EFL 및 E17 을 설치, 실행하기 위해서는 trunk 아래의 efl 및 e 라는 디렉터리만 빌드하면 됩니다.
단, 다양한 이미지, 동영상을 인식하는데 사용되는 evas_generic_loaders 및 위젯 라이브러리인 elementary도 같이 설치하면 좋습니다.
EFL은 빌드 시스템으로 autotools를 사용하기 때문에 autogen, make를 이용하여 빌드하면 됩니다.

빌드 스크립트는 다음과 같습니다.
EFL 소스코드를 받은 후 trunk 디렉토리에 아래와 같이 build.sh 스크립트를 생성하고 실행 권한을 부여합니다.

~/trunk$ vi build.sh

#!/bin/bash
set -e

unset LANG
export CFLAGS="-O2 -march=native -ffast-math -g -W -Wall -Wextra"

function build()
{
    for I in $1; do
        echo " "
        echo "=== $I ==="
        pushd $I
            if [ -f Makefile ]; then
                make clean distclean || true
            fi
            ./autogen.sh $2
            make -j6
            sudo make install
            sudo ldconfig
        popd
    done
}

build efl --disable-physics
build "evas_generic_loaders elementary e"


~/trunk $ chmod a+x build.sh

efl의 ephysics[11] 라이브러리를 빌드하려면 bullet[12]이라는 물리 엔진이 필요합니다.
그런데 우분투 12.04에는 bullet 물리엔진이 패키징되어 있지 않기 때문에 ephysics를 비활성화하여 efl을 빌드하도록 하겠습니다.
만약 bullet을 수동으로 빌드하고 싶으신 분은 아래 포스팅을 참고하여 bullet을 빌드하시고, 위 스크립트에서 --disable-physics 부분을 제거하고 빌드를 진행하시면 ephysics도 설치하게 됩니다.
   [EFL] EFL로 만든 물리 라이브러리 EPhysics [11]

위의 내용을 타이핑하기 귀찮으신 분들은 아래 링크에서 스크립트를 다운로드 받으세요.
[다운로드 링크 build_1204.sh] [5]
build_1204.sh 파일을 받으신 후에는 "chmod +x build_1204.sh" 명령을 이용하여 해당 파일에 실행 권한을 추가해주세요.

$ wget http://seoz.com/efl/build_1204.sh
$ chmod +x build_1204.sh

위 스크립트는 EFL을 이용하기 위한 최소한의 라이브러리만 설치하는 스크립트입니다.
제가 실제로 사용하는 스크립트는 EFL 오픈소스 안의 trunk/devs/seoz/build.sh [9]에 있습니다.
이 스크립트를 사용하기 위해서는 다른 패키지를 더 설치해야 하는데, 자세한 설명은 스크립트 내에 있습니다.

4. EFL 패키지 빌드 및 설치

그럼, 다음과 같이 build.sh 스크립트를 실행시켜주면 EFL 소스코드 빌드 및 설치가 진행됩니다.
sudo로 명령어를 실행하지 마시기 바랍니다.
대신 설치 도중에 비밀번호를 묻는 과정이 있습니다.

~/trunk $ ./build_1204.sh


5. EFL 설치 확인

빌드 및 설치 후에 다음과 같이 elementary_test 를 실행시켜서 잘 실행이 되면 빌드 및 설치를 성공한 것입니다..

~/trunk $ elementary_test


만약 빌드 도중에 에러가 발생하면 아래 포스팅을 참고해주세요.
   evas 빌드 도중 harfbuzz 관련 에러 발생 시 대처 방법 [6]
   E17 빌드에 libxcb-keysyms1-dev 필요 [7]

E17을 설정하고 사용하고 싶으신 분은 아래 포스팅을 참고해주세요.
   Enlightenment 윈도우 매니저 (E17) 설치 및 사용하기 [9]

[1] http://seoz.egloos.com/3504246
[2] http://seoz.egloos.com/3879420
[3] http://seoz.egloos.com/3473593
[4] http://seoz.egloos.com/3790900
[5] http://seoz.com/efl/build_1204.sh
[6] http://seoz.egloos.com/3836493
[7] http://seoz.egloos.com/3901147
[8] http://seoz.egloos.com/3910594
[9] http://seoz.egloos.com/3895469
[10] http://seoz.egloos.com/3920774
[11] http://seoz.egloos.com/3857085
[12] http://bulletphysics.org/
[13] http://seoz.egloos.com/3925744

[ EFL 게시물 목차 : http://seoz.egloos.com/3458699 ]





핑백

  • 천재태지의 세상 돌려보기 : [EFL/E17] EFL 및 E17 빌드 및 설치 (우분투 12.10) 2013-01-29 00:18:07 #

    ... 12.04 버전[11]</a>으로 나눕니다. 12.04 이전 버전은 이미 공식적인 지원이 끝났기 때문에 저도 설명하지 않겠습니다. 이 포스팅은 우분투 12.10을 위한 글입니다. EFL을 새로 설치하기에 앞서 우선 이전에 설치해둔 EFL 라이브러리가 있으면 충돌이 나지 않도록 미리 삭제합니다. 그 후 아래 과정을 순서대로 참고해주세요. 1. 소스코드 다운로드 EFL 소스코드 빌드에 앞서 EFL 소스코드를 다운받습니다. 이 부 ... more

  • 천재태지의 세상 돌려보기 : [EFL 강좌] EFL 소스코드 빌드 및 설치 2013-01-29 00:20:09 #

    ... 업데이트 되지 않으며 이 문서의 최신 버전은 아래를 참고하세요) [EFL/E17] EFL 및 E17 빌드 및 설치 (우분투 12.10) [EFL/E17] EFL 및 E17 빌드 및 설치 (우분투 12.04) 최신 EFL 소스코드 다운로드 강좌를 쓴 후, 한달만에 빌드 및 설치 강좌를 씁니다. 많이 바쁘네요... 아무튼 느리지만 꾸준히 하 ... more

  • EFL 한국 사용자 모임 : EFL 한국 사용자 모임 2013-02-06 00:20:32 #

    ... EFL 및 E17 빌드 및 설치 (우분투 12.04)</a>Ecore_X_Event_Window_Hide에 send_event 멤버가 없다는 빌드 에러 [웹사이트] Enlightenment 공식 홈페이지Enlightenment Korea FacebookEnlightenment Korea Twitter [EFL 기초] SVN을 이용하여 EFL 코드 다운로드 받기GIT SVN을 이용하여 EFL 코드 다운로드 받기 GIT을 이용하여 ... more

덧글

댓글 입력 영역