LXR 설치 하기 작성자: 김도집[[BR]] 작성일: 2005 Contents [[TableOfContents]] == 개요 == 다음은 데비안 GNU/리눅스 3.0/3.1에서 lxr 설치를 다룬다. LXR은 Linux Cross Reference로 리눅스 커널 소스를 볼 때 유용한 도구이다. 백문이 불여일견이라 [http://lxr.linux.no]를 방문해 보라. == lxr 패키지 설치 == {{{ # apt-get install lxr }}} 설치가 이뤄지면 /var/lib/lxr 디렉토리가 만들어진다. == glimpse 설치 == === glimpse 다운받아오기 === [http://webglimpse.net]에서 [http://http://webglimpse.net/trial/glimpse-latest.tar.gz glimpse-latest.tar.gz] 다운 받는다. 적당한 디렉토리에서 압축을 풀고 빌드 한다. {{{ # tar xvzf glimpse-latest.tar.gz # cd glimpse-latest # ./configure # make }}} 설치한다. {{{ # make install }}} 설치가 이뤄지면 /usr/local/bin 아래에 glimpse의 실행 파일들이 만들어진다. == 환경 설정하기 == === 아파치 설정하기 === 아파치2인 경우엔 /etc/apache2/apache2.conf, 아파치인 경우엔 /etc/apache/httpd.conf를 열어 다음을 추가한다. {{{ Options All AllowOverride All }}} 아파치의 문서는 /var/www를 기본 디렉토리로 한다. 이 아래 lxr에 대한 심볼릭 링크가 없다면 다음과 같이 만들어준다. {{{ # ln -sf /var/lib/lxr /var/www/lxr }}} 이후 아파치 데몬을 다시 시작한다. 아파치2인 경우: {{{ # /etc/init.d/apache2 restart }}} 아파치인 경우: {{{ # /etc/init.d/apache restart }}} === lxr 설정하기 === /var/lib/lxr/http/lxr.conf 파일에서 다음의 부분을 찾아 수정한다. {{{ # Define the base url for the LXR files. baseurl: http://lxr이설치된머신의IP또는도메인/lxr/http/ ... # Glimpse can be found here. glimpsebin: /usr/local/bin/glimpse }}} /var/lib/lxr/http/에 다음과 같은 내용의 .htaccess 파일을 만든다. {{{ SetHandler cgi-script }}} == 소스 db 생성하기 == db 생성에 대해서는 예를 들어 설명하겠다. [ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.11.tar.bz2 커널 소스 2.6.11] 소스를 다운 받는다. /var/lib/lxr/source/아래에서 2.6.11 이라는 디렉토리를 만들고 그 아래에서 커널 소스 압축을 풀고 그 디렉토리 이름을 linux로 한다. {{{ # cd /var/lib/lxr/source/ # mkdir 2.6.11 # cd 2.6.11 # tar xvjf linux-2.6.11.tar.bz2 # mv linux-2.6.11 linux }}} db를 만들고 퍼미션을 수정한다. {{{ # ../../bin/genxref linux # glimpseindex -H . linux # chmod a+r fileidx xref .glimpse* }}} /var/lib/lxr/source 아래에 defversion과 versions 파일을 만든다. defversion은 lxr에서 기본적으로 보여줄 버전 정보를 갖는다. versions는 db를 만든 소스의 버전을 한 줄에 하나씩 쓴다. defversion: {{{ 2.6.11 }}} versions: {{{ 2.6.11 2.4.18 }}} == 사용 == 브라우저에서 http://LXR이설치된IP또는도메인/lxr/http/blurb.html 로 접속하면 설치된 lxr를 볼 수 있다. == Trackback == 의견을 자유롭게 남겨주세요. [[comment]]