>> Read Reply from No. 49261 article  
RE: rpm 패키지작성하려구 하는데요.. 궁금한것이 있
어 질문올립니다..

등록 2002-05-17 16:31:00     조회 2
이름 잠쉬..rpm    

		음.. 제가 보기에는 우선
/usr/lib/rpm/ 밑에 있는 macros를 한번 봐 보시기 바랍니다.
 우선 간단히 답을 하자면 rpm은
먼저 /usr/src/*/BUILD에서 compile를 하며,
이 BUILD에서 install를 하게 되면
/var/tmp/program_name-version-root/ 밑으로 들어갑니다.
 그런후 저 directory를 최상위 root로 인식한 후 directory와
file를 묶습니다.
 그럼 저 $BUILD_ROOT_DIR은 spec에서 지정한
BuildRoot에서 정한 곳이 됩니다.
 님께서 적으신 spec를 보구 하나 하나 말씀해 드리져..
 : Summary: An linux Window System program.
 >>rpm의 간단한 설명입니다.
: Name: hanhaeexplore
>>rpm 파일의 이름입니다.
>> 이 이름은 기본적으로 rpm package의 이름이 됩니다.
 : Version:1.1.1
>>rpm 의 버전을 말합니다.
 : Release:1
>>rpm 파있의 release를 말합니다.
 여기까지 있는 name, version, release는
패키지의 이름-버전-release 가 됩니다.ㅈ
 : Copyright: HANHAE
: Group: Applications/System
: Source0: %{name}-%{version}.tar.gz
 >> /usr/lib/rpm/macros에 언급되어
>>있는 source 디렉토리에서 찾을 소스 file입니다.
>>여기의 %name-%version은 위에서 적은 내용을 따릅니다.
 : BuildRoot:%{_tmppath}/%{name}
 >> /usr/lib/rpm/acros에 언급되어 있는 %{_tmppath}를 읽어들여
>> rpm 설치시 임시적으로 binary를 설치할 dirctory입니다.
>>물론 이 directory는 package가 완료되면
>>%clean 매크로에서 알아서 지워줍니다.
 :
: %description
: HanHaeExplore
:
: Install the HanHaeExplore package
 >>>rpm package의 좀더 세부적인 설명..
:
>>>
>>> 여기까지가 rpm -qi packae했을때 나오는 여러 정보들을
>>> 가지고 있습니다. :)
  
: %prep
: %setup -q -n %{name}
 >>소스 파일을 푸는데 푸는 directory이름을 name로만 되어 있군여.
>>그리고 -q 옵선은 압축을 푸는데 보여주지 마라.. 라는 의미입니다.
  : %build 
 >>음..compile과정이 없군여..
>>(꼭 kdlp에 있는 질문과 비슷한 느낌.. :))
 : %install 
: rm -rf $RPM_BUILD_ROOT
>> 혹시 모르니까 기존의 설치한 임시 binary_target  디렉토리를
>>삭제합니다.
>>실제로 지우는 directory는 /var/tmp/이름 입니다.
 : mkdir -p $RPM_BUILD_ROOT
: cp -rf /usr/src/redhat/BUILD/%{name} $RPM_BUILD_ROOT
 >>임시로 설치할 directory를 생성한 후 /var/tmp/name/디렉토리에
>> 복사를 하네여..
>>흠.. 이건..
>> mdir -p $RPM_BUILD_ROOT/%{name}
>> cp -rf  *  %RPM_BUILD_ROOT/%{name}
>> 이렇게 해도 됩니다.
:
: %post
: /sbin/ldconfig
>>이 rpm package를 설치한 후 행해야할 동작
>>대부분여기에 scripts가 많이 들어갑니다.
>>예를 들어 이 package가 system에서 ㅣ이용할 library를
>>가지고 있다면..
>>이렇게도 작성 될수 있습니다.
%post
thislibrary=$(grep thislib_dir /etc/ld.so.conf)
if [ ! $(testlibrary) ] ; then
	echo "/usr/lib/this_library_path" >>/etc/ld.so.conf
fi
/sbin/ldconfig
이렇게 하시면 /etc/ld.so.conf에 이 library path가 들어가서
따로 LD_LIBRARY_PATH 를 설정하시지 않아도 ㅇ됩니다.
  : %postun
: /sbin/ldconfig
>>이 package를 지운 후에 해야할 사항..
 이 외에도 %pre, %preun이 더 있습니다.
%pre는 이 패키지를 설치하기전에 행해야할 사항
%preun은 이 패키지른 지우기 전에 행해야할 사항 입니다.
  :
: %clean
: rm -rf $RPM_BUILD_ROOT
 >>오~ /var/tmp/%{name} 디렉토리를 지우는군여..
>>만약 rm -rf$RPM_BUILD_ROOT를 하시지 않으면
>>/var/tmp/%{name}가 남아 있습니다.
   : %files 
 >>드뎌 file list :)
 : 
:
: %changelog
 >> 내가 변경한 사항..:)
 흠.. 생각나는 대로 바로 적어서..말이 좀 안 될수 있는데..
 
대충 이해하시면서...... 읽어주세여..
:)
 마지막으로 중요한 사항..
/usr/lib/rpm/macros를 봐 보세여...:)
 그럼.. 도움이 되셨길..
  :
: 뭐 대충 이런건데요..프로그램은 웹에서 돌아가는 리
:
: 눅스 서버관리 툴인데요.. rpm -ba ...spec 하면
:
: 소스 rpm과 바이너리 rpm이 만들어 지거든요..
:
: 그리고 이 스펙에서는 컴파일 과정은 없습니다.
:
: 이미 컴파일 되어진 바이너리 파일을 압축해서
:
: rpm을 만드는거니까요.. 그런데 rpm 설치시 어디에
:
: 파일이 copy되는지 그런걸 알수가 없습니다.
:
: 제가 잘 몰라서 spec에 지정을 안해준걸수도 있는데
:
: 지정해주려면 어떻게 해야할까요? 바쁘신데 읽어주
:
: 셔서 감사합니다..
이름
암호


>> 관련글
49261 rpm 패키지작성하려구 하는데요.. 궁금한것이 있어 질문올립니다..  한혁승  2002.05.17  ....
  답장 RE: rpm 패키지작성하려구 하는데요.. 궁금한것이 있어 질문올립니다..  잠쉬..rpm  2002.05.17  ....
Register [ localhost 목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 3.34 초 ] 작업시간: [ 2.75 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1791490294
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.