우분투 한국 사용자 모임

 

지금 시간: 2010/09/03 금 12:30 pm


새 글타래 올리기 댓글 달기  [ 글: 26 개 ]  페이지 이동 1, 2, 3  다음
글쓴이 내용
오프라인
글올림: 2008/09/09 화 11:52 am 
회원 아바타
 e-메일  www  개인정보

가입일: 2008/03/31 월 5:47 pm
글: 4732
우분투를 사용 하는 이 누구나 쉽게 컴파일을 배울 수 있도록 쉽게 적어 나갈 생각이며
시간 날때마다 계속 아래 순서대로 적어 볼 계획 입니다.

또한 이글을 쓰는 이유는
저는 컴퓨터 전공자가 아닌지라 좀 더 배우며 제가 아는 방식이 잘못 되거나
잘못 알고 있는 것을 고치고자 합입니다.


먼저 오늘은 기초적으로 자체 패키지를 다운 받아 컴파일을 해보겠습니다.

우선 컴파일러 부터 설치 해야 합니다.
그놈 터미널에서
 $ sudo apt-get install build-essential        (l자 끝에 첨가 : Vulpes 님 감사 :idea: )
위 명령어로 컴파일에 필요한 gcc, g++, make, dpkg-dev 등 이 설치 됩니다. (역시 편한 데비안 + 우분투)


제가 평소 무척 애용하는 쉘 파일 매니져인 MC : midnight commander 를 컴파일 해보겠습니다.
소스를 다운 받으려면 상단패널 주메뉴 시스탬/ 관리/소프트웨어 소스 에서 소스코드에 체크를 하셔야
소스를 다운 받을 수 있습니다.

그놈 터미널에서
 $ mkdir com && cd com (com 디렉토리:폴더 만들고 이동)
 $ apt-get source mc (mc 소스 다운로드)
보통 저장소의 기존 소스를 다운 받으면 3개의 파일을 다운 받으며 자동으로 소스 압축을 풀고 패치를 적용 합니다.
 mc_4.6.1.orig.tar.gz (mc 오리지날 소스)
 mc_4.6.1-8ubuntu1.diff.gz (패치파일)
 mc_4.6.1-8ubuntu1.dsc (패키지 정보 및 개인키 사인 파일)
그리고 압축 풀리고 패치적용되어 있는 mc-4.6.1 디렉토리(폴더) 앞으로 저는 디렉토리라 명하겠습니다.
디렉토리는 파일 또는 디렉토리가 모여 있는 방을 말하는데
보통 요즘 폴더는 그래픽상황서 파일 모인 방을 디렉토리는 콘솔 터미널 같은 텍스트 모드에서의 방을 말할때 쓰입니다.

MC 컴파일시 필요한 패키지 설치
오늘은 처음이니 위 파일들 설명이나 복잡한 이야기는 생략 하고 딱 한가지만 말하겠습니다.
리눅스 프로그램은 컴파일 되기 위하여 다른 라이브러리를 필요로 합니다. 이를 '컴파일 의존 라이브러리' 라 하는데..
우분투에선 보통 '패키지이름-dev.버전.deb' 로 되어 있습니다.
다른 프로그램 소스를 참고 하고 가져와 함께 만들어 지는 것입니다.
컴파일 의존 패키지는 여러개인데 이를 일일이 찻아 설치는 매우 귀찮고 뻬먹기가 쉽습니다.
그래서 데비안+우분투에 있는 설치 명령어가 apt-get build-dep 이 있습니다.
 $ sudo apt-get build-dep mc (이명령어 하나로 MC 컴파일에 필요한 패키지가 설치 됩니다.)

오늘 살펴 볼 파일은 mc-4.6.1/debian/changelog 파일 입니다.
 $ cd mc-4.6.1 (이동)
 $ gedit debian/changelog (편집기로 열기)
mc (1:4.6.1-8ubuntu1) hardy; urgency=low 첫번째 줄인데 4.6.1은 MC 버전을 8ubuntu1은 우분투 패키징 버전을 말합니다.
이줄에 우분투 패키징 버전을 mc (1:4.6.1-8ubuntu2) hardy; urgency=low 끝에 2로 하여 패키징 버전을 올리는 이유는
자동 업데이트를 막기 위함입니다. 같은 버전이 설치 될경우 저장소의 것으로 자동 업데이트 관리자가
업데이트를 하려고 하기 때문 입니다. 이경우 버전을 강제로 업 안되게도 할수 있으나 한단계 버전을 올리는 것도 좋은 방법입니다.
첫줄에 패키지버전을 바꾸시기 바랍니다.

그냥 컴파일 하기엔 좀 심심하니 소스 조금 고치겠습니다.
$ gedit po/ko.po
po 파일은 번역파일인데 poedit 를 이용하면 쉽게 편집 할수 있으나 오늘은 그냥 텍스트에디터로 하겠습니다.
gedit 편집/기본설정 열어 줄번호 표시 체크하면 앞에 줄번호가 나오는데
511 번줄에... " 사용자와 친근한 텍스트 편집기.\n" 가 있는데 다음줄에
" 우분투 만세.\n" 같은 문구 넣어 보시기 바랍니다.
" 는 문자열 \n 은 다음줄 개행 입니다.

컴파일
데비안+우분투의 정통적인 패키지 방식은 fakeroot 입니다.
fakeroot 는 일반 사용자가 루트권한으로 행해져야 할 일들을 가상으로 해주면서 컴파일을 해 줍니다.
$ sudo apt-get install fakeroot (fakeroot 설치)
$ fakeroot debian/rules binary ( :!: jhlee0324님의 테스팅 : 에고 binary 빠트림)
이제 부터 환경 설정과 컴파일 그리고 패키지가 만들어 집니다.

조금 시간 걸리실 겁니다.

설치
 $ cd .. && ls -al
 $ sudo dpkg -i mc*.deb
(방금 만들어진 deb 파일 설치 하는데.. 32비트환경과 64비트 환경에 따라 이름이 다르게 만들어 지는 지라
와일드 카드이용 mc로 시작하는 .deb 파일울 설치 하라 입니다. -i 설치 , -r 제거)

확인
$ mc 실행 후 텍스트 파일에 선택 막대 위치 한후 f4키로 편집 상테에서 f9로 메뉴 호출하여 '이프로그램에 관하여' 보시기 바랍니다.
MC : midnight commander 는 사용 법을 익혀 두시면 쉘에서 아주 편하게 작업을 도와 줍니다. 재추천

다음번엔 인터넷에서 다운 받은 소스를 컴파일 해보겠습니다.


맨 위로 이동
 

오프라인
글올림: 2008/09/09 화 1:35 pm 
회원 아바타
 e-메일  www  개인정보

가입일: 2008/07/30 수 4:19 pm
글: 1468
사는 곳: Seoul, Korea
아... 뭔가 굉장히 유익한 시리즈가 될 것 같네요! 어서 집에 가서 따라해보고 싶네요!

_________________
재성才誠 LT blog, ubuntu, Wiki, Twitter

E-mail, MSN, Gtalk, Wave jaesung (at) liberotown (dot) com
Skype bang.jaesung
IRC 재성 @irc.hanirc.org #ubuntu, Jaesung @irc.ubuntu.com #ubuntu-ko
ASUS F83Vf-VX009V Intel Core2Duo P8700, RAM 4GB, GeForce GT 220M


맨 위로 이동
 

오프라인
글올림: 2008/09/09 화 1:57 pm 
회원 아바타
 e-메일  www  개인정보

가입일: 2008/04/27 일 12:06 am
글: 2521
아... 뭔가 굉장히 유익한 시리즈가 될 것 같네요! 어서 집에 가서 따라해보고 싶네요! X 2

(흠.. 너무 날(?)로 먹는 건가..; )

_________________
http://pcandme.net


맨 위로 이동
 

오프라인
글올림: 2008/09/09 화 2:07 pm 
회원 아바타
 e-메일  www  개인정보

가입일: 2008/04/21 월 2:45 pm
글: 1012
사는 곳: 하늘아래
아... 뭔가 광장한... 오타가. =.=

_________________
HazE's Land: http://haz3.com
NateOn: haze11@nate.com
MSN: haze11@nownuri.net
Skype: hansunlee
Twitter: http://twitter.com/haze11


맨 위로 이동
 

오프라인
글올림: 2008/09/09 화 2:18 pm 
회원 아바타
 e-메일  www  개인정보

가입일: 2008/03/31 월 5:47 pm
글: 4732
coreanlibero님 pcandme님 해보시고 문제 있음 댓글 부탁 드립니다.

haze11 님의 글:
아... 뭔가 광장한... 오타가. =.=


광장한 오타가 있습니다.
광장에서 안쓰고 80년대식으로 밀실에서 수기 한지라... ;)
헤즈님이 광장에서 외친거 써주세요
오타 지적 부탁...


맨 위로 이동
 

오프라인
글올림: 2008/09/09 화 2:29 pm 
회원 아바타
 e-메일  www  개인정보

가입일: 2008/04/01 화 5:56 pm
글: 1450
일단 오타 하나.

sudo apt-get install build-essentia

>> sudo apt-get install build-essential

_________________
FoxTech: http://foxtech.tistory.com
Image *메일 주소 이미지 만들기*
Image


맨 위로 이동
 

오프라인
글올림: 2008/09/09 화 11:32 pm 
 e-메일  개인정보

가입일: 2008/09/01 월 2:32 pm
글: 23
차례대로 하고 있는데, 여기서 막히네요.

강분도 님의 글:
컴파일
데비안+우분투의 정통적인 패키지 방식은 fakeroot 입니다.
fakeroot 는 일반 사용자가 루트권한으로 행해져야 할 일들을 가상으로 해주면서 컴파일을 해 줍니다.
$ sudo apt-get install fakeroot (fakeroot 설치)
$ fakeroot debian/rules
이제 부터 환경 설정과 컴파일 그리고 패키지가 만들어 집니다.

조금 시간 걸리실 겁니다.


저렇게 $fakeroot debian/rules 를 하면
Attachment:
com-mc-4.6.1.png
com-mc-4.6.1.png [ 90.22 KiB | 7304 번 봄 ]


이렇게 됩니다. 제대로 안된거 같은데.... 이건 어떤 문제가 있는건가요?

_________________
시간이 없다는 것은 변명일 뿐....


맨 위로 이동
 

오프라인
글올림: 2008/09/09 화 11:36 pm 
회원 아바타
 e-메일  www  개인정보

가입일: 2008/03/31 월 5:47 pm
글: 4732
jhlee0324 님의 글:
저렇게 $fakeroot debian/rules 를 하면
이렇게 됩니다. 제대로 안된거 같은데.... 이건 어떤 문제가 있는건가요?


에고 죄송 합니다. $ fakeroot debian/rules binary 입니다. 망극 :mrgreen:
그리고 감사 합니다.


맨 위로 이동
 

오프라인
글올림: 2009/03/06 금 10:37 pm 
 e-메일  개인정보

가입일: 2008/04/13 일 12:57 pm
글: 26
우분투 8.10을 사용중입니다.

sudo apt-get install fakeroot 로 설치를 시도했는데 설치는 이미 되어있다고 합니다.

그래서 다음 단계인

fakeroot debian/rules binary
를 실행했는데...

Code:
$ fakeroot debian/rules binary
dh_testdir
make: dh_testdir: 명령을 찾지 못했음
make: *** [debian/stamp-common-install] 오류 127

위와 같은 오류 메시지가 납니다. 무슨 문제인가요?


맨 위로 이동
 

오프라인
글올림: 2009/03/06 금 11:10 pm 
회원 아바타
 e-메일  www  개인정보

가입일: 2008/03/31 월 5:47 pm
글: 4732
8.10 이면 위 글과 다른점은
소스를 다운 받으면 소스가 풀린 디렉토리(폴더)가 mc-4.6.2~git20080311 일 것 입니다.
위 글중
Code:
오늘 살펴 볼 파일은 mc-4.6.1/debian/changelog 파일 입니다.
 $ cd mc-4.6.1 (이동)  부분을
  $ cd mc-4.6.2~git20080311 로 이동
Attachment:
파일 설명: 8.10 에서 패키지 빌드
screenshot1.png
screenshot1.png [ 3 KiB | 5588 번 봄 ]


보통 소스 다운 받고 (apt-get source [소스] )
컴파일 의존 패키지 설치 하고 ( apt-get build-dep [이름] )
소스 풀린 디렉토리에서 에서 fakeroot debian/rules binary 하면 됩니다.
차분히 다시 해보시기 바랍니다.


맨 위로 이동
 

예전 글 보기:  정렬 순서  
새 글타래 올리기 댓글 달기  [ 글: 26 개 ]  페이지 이동 1, 2, 3  다음


접속중인 사람

이 포럼에 접속중인 사람: 가입한 회원 없음, 손님 1 명


이 포럼에서 새 글타래를 올릴 수 없습니다.
이 포럼에서 댓글을 달 수 없습니다.
이 포럼에서 자신의 글을 수정할 수 없습니다.
이 포럼에서 자신의 글을 지울 수 없습니다.
이 포럼에서 파일을 첨부할 수 없습니다.

찾기:
포럼 이동:  
Powered by phpBB © 2000, 2002, 2005, 2007, 2010 phpBB Group  
Design By Poker Bandits  
translated by ubuntu-ko