Getting Started/Build/KDE4/Prerequisites (ko)

< Getting Started‎ | Build‎ | KDE4
Revision as of 13:18, 15 July 2012 by AnneW (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Building KDE4 From Source/Prerequisites
Tutorial Series   Getting Started
Previous   KDE SVN Quickstart Guide
What's Next   KDE SVN Quickstart Guide
Further Reading   n/a

Contents

개요

이들 패키지들은 배포판에서 설치가 가능합니다. 설치와 업그레이드를 쉽게 하려면, 최신 버젼이 제공된다면 배포판 패키지를 설치하는 것이 좋습니다. KDE4를 설치하기 위해서 필요한 소프트웨어들입니다.

  • gcc와 g++, 가능하다면 4.2 버전 이상
  • svn, subversion 클라이언트
  • pkg-config
  • X11과 OpenGL(mesa-common-dev 와 libglu1-mesa-dev), libjpeg, libpng, libungif, libclucene, librdf, libxml2 libxslt에 관한 개발 라이브러리와 헤더,
  • kdesdk에 포함되어있는 makeobj 스크립트. kdesdk(데비안의 kdesdk-scripts) 또는 비슷한 패키지에서 설치하거나 WebSVN에서 다운로드할 수 있습니다.
  • shared-mime-info 패키지, 이것은 KDE에서 사용되는 freedesktop MIME 표준입니다.
  • kdebase에서 사용되는 boost ; 빌드 그리고/혹은 설치 후에 cmake가 Boost를 찾기 위해서, CMAKE_INCLUDE_PATH에 (하위 디렉토를 포함하는) boost 디렉토리를 추가하거나 BOOST_ROOT 환경 변수에 boost 디렉토리를 가리키도록 설정해줍니다.

D-Bus

QtDBus와 KDE는 D-Bus 0.62 뿐만 아니라 0.92 그리고 상위 버전과 함께 동작합니다. 0.60과 0.61 버전은 테스트되지 않았지만 아마 동작할 것입니다. 0.90과 0.91 버전은 동작하지 않습니다. post-1.0 릴리즈 버전(적어도 0.94)를 추천하기 때문에, 버전이 맞지 않다면 업그레이드를 고려하세요.

최신 D-Bus 버전이거나 업그레이드를 원하지 않는다면 이 섹션은 생략해도 됩니다. 만약 HAL 빌드하지 않는다면 아마도 binding 빌드를 생략하기 원할 것입니다.(아래를 보세요)

레시피(recipe) 단계를 진행하기 전에, X11 헤더와 라이브러리들이 이용가능하지 확인하세요. 설정 스크립트 실행시 5번째 라인에 아래와 같이 출력됩니다:

Building X11 code:        yes

The Recipe

Ktip.png
 
Tip
에서 설명하고 있는 환경이 제대로 설정되어 잇는지 확인하세요. 이것은 cscb 함수가 동작하기 위해 필요합니다.


cs # 'cs'는 bash 함수입니다, 더 많은 것을 배우려면 여기 클릭하세요. 
wget http://dbus.freedesktop.org/releases/dbus/dbus-1.0.2.tar.gz
tar -xvzf dbus-1.0.2.tar.gz
cd dbus-1.0.2/
./configure --prefix=$DBUSDIR --localstatedir=/var
make
sudo make install
sudo dbus-uuidgen --ensure
cs # 위를 참고하세요.
wget http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.74.tar.gz
tar -xvzf dbus-glib-0.74.tar.gz
cd dbus-glib-0.74/
./configure --prefix=$DBUSDIR
make
sudo make install
cd
sudo chown -R kde-devel:kde-devel *

What's Happening

소스 디렉토리에서로 이동한 후(1번째 라인), B-Bus 소스를 freedeskop.org로 부터 다운로드하고(2번재 라인), 압축을 풉니다(3번재 라인). 새로 생성한 D-Bus 디렉토리로 이동하여(4번째 라인), 주어진 configure 스크립트를 이용하여 빌드설정합니다(5번째 라인). D-Bus 빌드와(6번째 라인) 설치(7번째라인) 이후, 데스크탑 세션이 시작할 때 자동으로 bus가 시작할 수 있도록 식별 파일을 설치하기 위해 dbus-uuidgen 툴을 사용합니다(8번째 라인).

마지막 두 단계에서는 /var에 쓰기 권한이 필요합니다. 시스템에 sudo 명령어가 없다면, 대신 예를들면 su -c "make install"같은, su 명령을 사용해도 됩니다.

glib 바인딩 빌드과정은 위와 비슷합니다.

두 패키지의 빌드가 완료되면, 'sudo make install'이 ~kde-devel/kde 안의 파일과 디렉토리를 root 권한으로 변경하기 때문에, 파일의 소유권한을 고쳐야합니다.

Troubleshooting

다음과 같은 에러가 발생하면: "configure: error: DBus development libraries not found" 이렇게 하세요: export PKG_CONFIG_PATH=/lib/pkgconfig/

CMake

CMake >=2.4.5 가 설치되어 있다면 이 과정은 생략하세요. CMake site에서 바이너리 패키지를 이용할 수도 있습니다. 배포판의 특정 패키지 역시 사용할 수 있습니다.

The Recipe

cs # 'cs'는 bash 함수입니다, 더 많은 것을 배우려면 여기 클릭하세요.  
wget http://www.cmake.org/files/v2.4/cmake-2.4.6.tar.gz
tar -zxf cmake-2.4.6.tar.gz
mkdir cmake-build
cd cmake-build 
../cmake-2.4.6/bootstrap
make
sudo make install

What's Happening

먼저, kde-devel 유저의 소스 디렉토리로 돌아갑니다(1번째 라인), CMake 소스를 얻고(2번째 라인) 풉니다(3번째 라인). CMake를 빌드할 디렉토리를 만들고(4번째 라인), 안으로 들어갑니다(5번째 라인). CMake 빌드 설정을 위해 CMake bootstrap 스크립트를 실행하고(6번째 라인), 그리고 나서 make하고(7번째 라인) root를 이용하여 설치합니다(8번째 라인)


If your system does not have the sudo command, you can instead do su -c "make install". 시스템에 sudo 명령어가 없다면, 대신 su -c "make install"를 사용할 수 있습니다.

Qt

다음으로 Qt4가 필요합니다. KDE 4.0은 qt 4.3에 대응하여 빌드되지만, (곧 4.1이 될)KDE trunk는 qt의 개발 버전이 필요합니다. Qt 4.4의 최신 스냅샷은 qt-copy 모듈에서 이용할 수 있습니다. KDE4는 Qt 4.2 혹은 그 이전 버전에 대응되어 빌드되지 않습니다.

대부분의 배포판은 Qt 4.3 패키지들을 가지고 있습니다. 몇몇은 Qt 4.4 베타 아니면 qt-copy 패키지를 가지고 있습니다. 사용하는 배포판이 이렇다면 사용가능합니다. Qt의 필요한 버전을 패키지로 제공하지 않는다면, 아래의 레시피를 이용할 필요가 있습니다. 더 많은 정보는 각 배포판의 튜토리얼 섹션에서 찾을 수 있습니다.

qt4.4 빌드시 -no-qt3support 옵션은 문제를 일으킬 수 있습니다.

Qt 설정에 필요한 옵션 뿐만 아니라, 현재 알려진 이슈에 관해서 README.qt-copy을 읽어보세요.

The Recipe

cs # cs는 오타가 아닙니다. .bashrc를 보세요.
svn checkout svn://anonsvn.kde.org/home/kde/trunk/qt-copy
cd qt-copy
./apply_patches
./configure -debug -prefix $QTDIR
make -j2 # 컴파일을 더 빨리 하려면, 'make -j(X+1)'를 이용하세요. X는 컴퓨터 프로세서의 개수입니다.
# 설치하지 않는다면, 디스크 용량을 줄이기 위해 obj 파일들을 지웁니다
if [ "$QTDIR" = "`pwd`" ]; then \
find . -name '*.o' -delete ; \
else make install; fi;

$QTDIR에서 문제가 발생한다면 qmake의 위치를 확인하세요, 예:

/home/kde-devel/qt-copy/bin/qmake

What's Happening

kde-devel 유저의 홈 디렉토리로 돌아와서(1번째 라인), KDE의 저장소로 부터 subversion(svn)를 이용하여 소스 코드를 다운로드받습니다(2번째 라인). 결과로 생성된 qt-copy 디렉토리로 이동한 후(3번째 라인), qt-copy에 포함된 패치를 관리하는 스크립트를 실행합니다(4번째 라인).

패치들이 적용되면, configure 스크립트를 이용하여 빌드 설정합니다(5-6번째 라인). qt-copy/README.qt-copy 파일안에는 다양한 명령어들이 설명되어 있습니다. 마지막으로, KDE를 위해 최소 조선으로 빌드하고(7번째 라인), Qt를 설치합니다(10번째 라인). 설치 디렉토리가 현재 디렉토리와 동일하다면(8번째 라인), 대신 어느정도 용량을 삭제합니다(9번째 라인). 모든 예제와 데모 애플리케이션들을 원한다면, 개별로 빌드하거나, qt-copy 디렉토리에서 간단히 make를 실행할 수 있습니다.

이 설치는 위치상으로 $QTDIR안에 설치되기 때문에 root가 필요하지 않습니다. $QTDIR가 소스 디렉토리와 다르다면 설치가 필요합니다.

마지막으로, Qt 디렉토리를 찾아서 cmake macro가 동작하는지 확인하세요. $QTDIR안에서 qmake를 찾을 수 있습니다.

Troubleshooting

"error: X11/Xlib.h: No such file or directory"라고 에러가 난다면, xorg의 개발 패키지를 설치하세요(실제 이름은 운영체제에 따라 다양합니다. 예를 들면, Kubuntu같은 Ubuntu 기반의 시스템에서는 xorg-dev입니다).

설정단계에서 missing define에 관한 에러가 발생하면, $QMAKESPEC의 값을 체크하세요. 어떤 배포판들은 시스템에 설치된 Qt에 대해서 설정합니다. unset QMAKESPEC으로 이 문제를 해결한다면, ~/.bashrc에 추가해야 합니다.

".pch/debug-shared/QtCore" 에러가 발생한다면, Qt-4.3는 프리컴파일 헤더가 가능하기 때문입니다(this is because Qt-4.3 enables precompiled headers). gcc가 프리 컴파일 헤더를 지원한다면, 여러가지 이유로 동작하지 않습니다. Qt-4.3가 프리컴파일 헤더 때문입니다. distcc를 사용한다면, qt와 함께 -no-pch를 설정합니다. icecream을 사용할 경우, svn trunk의 최신 icecream을 업데이트합니다.

assistant같은, 아무 Qt 프로그램을 사용해보세요. Note: 이 애플리케이션을 실행하고자 하는 일반 kde3 유저 때문에 xhost +local:kde-devel를 실행해야 할 필요가 있습니다. QSpanData::adjustSpanMethods에서 충돌이 난다면, 문제는 oxygen style입니다. lib/kde4/plugins/styles/kstyle-oxygen.solib/kde4/plugins/styles/oxygen.so 들이 KDE가 설치된 디렉토리(prefix)에 있으면 를 제거하도록 하세요.

로컬 API 문서 생성하기(Generating local API documentation)

KDevelop과 잘 통합하기 위해 로컬에 Qt 문서를 가지고 있는 것이 좋으며, 매우 쉽게 만들 수 있습니다(README.qt-copy에서도 보여집니다 ):

cd $KDE_SRC/qt-copy
make docs
./config.status
make install

나중에 Qt를 재빌드하더라도, 이번 한번만 실행해야 함을 유의하세요.

HAL

Ktip.png
 
Tip
org.freedesktop.hal을 가지고 있다면, 보기 위해 qbdusviwer를 사용할 수 있습니다. 그렇지 않다면 새 버전의 hal이 필요할지도 모릅니다. org.freedesktop.hal을 가지고 있으면, HAL을 굴릴 필요가 없습니다(you probably don't need to, and don't want to, roll your own HAL).


HAL의 새 버전을 빌드해야 한다면, 마찬가리로 다른 소스를 빌드할 필요가 있을 때, 일부는 직접적으로 빌드하지 않을수 있는 근사한 기회입니다. 그러나, 오래된 배포판들에서는 필요할 것입니다.

kdesupport

noframe
 
Warning
먼저 Setting Up The Environment 섹션을 읽는 것을 잊지마세요.


kdesupport 모듈에는 KDE 애플리케이션이 의존하는 몇몇 라이브러리들이 있습니다. 이것들은 파일 메타데이터와 검색을 위한 Strigi와 Soprano 그리고 kdebase에서 이미지 조작에 필요한 QimageBlitz, Kalzium과 애플리케이션에서 같은 비주얼 효과들을 위한 eigen, 음악 플레이어를 위한 taglib, 일부 암호화에 필요한 qca를 포함하고 있습니다.

Strigi는 그자체가 마찬가지로 몇몇 의존성을 가집니다: libz, libbz2, openssl (libcrypto 또는 libssl), libclucene (>=0.9.16a 주의하세요 : 0.9.17 버전은 동작하지 않습니다)와 libxml2 또는 libexpact에 관한 라이브러리와 헤더가 필요할 껍니다.

openSUSE를 사용한다면, KDE:KDE4 빌드서비스(buildservice) 저장소에서 필요한 패키지를 설치할 수 있으며, 일부러 아래의 항목을 무의미하게 실행할 필요가 없습니다. kdelibs 섹션로 넘어가세요.

The Recipe

cs # 'cs'는 bash 함수입니다, 더 많은 것을 배우려면 여기 클릭하세요.
svn checkout svn://anonsvn.kde.org/home/kde/trunk/kdesupport/
cd kdesupport
cmakekde

What's Happening

기본 소스 디렉토리로 이동합니다(1번째 라인). subversion을 이용하여 kdesupport 안의 소스를 다운받고(2번째 라인), 새로 생성된 ~/kde/src/kdesupport 디렉토리안으로 이동하고(3번째 라인), 빌드를 시작합니다(4번째 라인). 빌드가 완료된 후 kdesupport 빌드 디렉토리를 나오게 될 겁니다.

Troubleshooting

cmakekde: command not found

에러가 발생하면, ~에서 수동으로 kdesupport 디렉토리로 들어가야 하며, cmakekde 명령을 실행해야합니다. 여전히 동작하지 않는다면, bashrc의 어떤 것이 잘못되었습니다.

CMake Error: This project requires some variables to be set,
and cmake can not find them.
Please set the following variables:
LIBXML2_INCLUDE_DIR (ADVANCED) 

에러가 발생한다면, libxml2에 관한 개발(development) 패키지를 설치해야합니다.

CMake Error: Could NOT find REDLAND

에러가 발생하면, Redland에서 librdf가 필요합니다. 배포판이 librdf 패키지를 제공하지 않는다면, 소스를 다운(http://download.librdf.org/source/)받아 빌드할 수 있습니다. (Gentoo 유저들: librdf에 대한 ebuild는 dev-libs/redland 입니다)

Fetching external item into 'kdesupport/admin'
Error validating server certificate for 'https://...'

에러가 발생하면, Using Subversion with KDE를 보세요.

FILE cannot create directory: /usr/lib[64]/qt4/plugins/crypto. Maybe need administrative privileges.
make: *** [install] Error 255

에러가 발생하면, 위에서 설명한 .bashrc 파일을 몇초간 바라봅니다. 패스(path)가 올바른 가요?($QTDIR과 $PATH는 QT 설치 패스를 사용합니다)

대신에, qt4 버전이 설치된 배포판을 사용하기로 결정하고 위의 Qt 설치를 생략햇다면 이 에러를 볼 수도 있습니다. 위에서 설명된 것처럼 qt-copy를 설치하거나, "sudo make install" 실행하세요. "sudo make install"를 사용한다면, sudo를 사용함으로써 영향 받는 ~/kde 하위 디렉토리(subdirectories)의 일부에 대해 소유권이 변경되었는지 확인하세요(예. "sudo chown -R kde-devel:kde-devel ~/kde")

 target libQtTest.so not found

와 관련된 메시지를 받는다면, qt-copy를 다시 컴파일할 필요가 있습니다. 이제 설정 명령(configure commane)로부터

  -nomake demos -nomake examples

를 빼면, Qt는 QtTest 라이브러리를 생성합니다.

CMake Error: Qt qmake not found!

에러가 발생한다면,

     1) .bashrc 스크립트에서 Qt 섹션의 주석을 제거합니다.(QTDIR, QT_PLUGINS_DIR,      
           PKG_CONFIG_PATH 변수 설정(variable settings)).
     2) source ~/.bashrc
     3) cd && cd qt-copy
     4) make confclean
     5) Qt 설치 단계를 반복합니다(./configure 라인부터).
     6) kdesupport 빌드를 재시도 합니다.
"CMake Error: Could NOT find BZip2"

에러가 발생하면,

sudo apt-get install libbz2-dev

다음 단계(Next Step)

모든 필요항목은 설치되었습니다. kdelibs를 설치할 시간입니다.


This page was last modified on 15 July 2012, at 13:18. This page has been accessed 2,962 times. Content is available under Creative Commons License SA 3.0 as well as the GNU Free Documentation License 1.2.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal