2011-01-05 4 views
4

일부 소프트웨어가 들어있는 FreeBSD 바이너리 패키지를 만들고 싶습니다. 내가하고 싶은 일은FreeBSD pkg_create 방법

"디렉터리 X의 일부 파일은 디렉터리 Y로 이동해야합니다"라는 디렉터리 아래의 디렉터리 계층 구조가 보존되어 있다고 말합니다. 필요한 경우 패킹리스트의 모든 파일을 쉽게 지정할 수 있습니다.

그러나 이것은 내가 원하는 것을 수행하는 -s, -S @cwd 및 @srcdir 매개 변수의 조합을 찾을 수 없으므로 달성하기가 너무 힘들 것 같습니다. 디렉토리 Y에서 파일 (빌드 시스템에는 존재하지 않음)을 찾거나 파일을 디렉토리 X에 패키지화합니다.이 디렉토리는 내가 원한 것이 아닙니다.

"포트를 만들면"대답하기 전에 원격으로 "포트"를 만드는 데 관심이 없습니다. "항구"는 우리가하는 일과는 아무런 관련이 없습니다. 이는 제 3 자에 의한 배포를위한 패키지가 아니며 제 3 자의 소스 분산을 목적으로하는 교차 플랫폼 응용 프로그램이 아닙니다.

파일 시스템의 지정된 위치에 일부 파일을 설치하는 바이너리 패키지를 만들고 싶습니다. 너무 어렵습니까?

이것은 FreeBSD 7.3입니다.

+0

실용적인 해결책을 찾았습니까? 비슷한 위치에 있지만 재배포 가능 패키지를 만들 계획입니다. 그러나 이미 바이너리를 가지고 있으므로 포트를 생성하고 싶지 않습니다. 그러므로 "패키지 만들기"는 내가 원하는 것을 실제로하지 않습니다. – mandrake

답변

4

패키지를 직접 만들면됩니다. pkg_create (및 'find'스타일의 패키지 목록을 생성하거나 파이핑하거나, 간단한 패키지 (pub/FreeBSD/ports/amd64/packages-6.3-release/Allwidentd-1.03_1.tbz 같은 것을 간단한 것으로 만듭니다) 다음

+CONTENTS 
     see example or man page 
+COMMENT 
     foo 
+DESC 
     foo 
+MTREE_DIRS 
     /set type=dir uname=root gname=wheel mode=0755 
     . 
     bin 
     .. 
     etc 
     .. 
     .. 

과 : 예)와 디렉토리로 구성된

your files.. 

에 나중에 상대/usr/지방 그냥 거기에 어떤 일이 일어나는지에 관해서는 위와 같이 패키지를 가지고 위는 그 다음이다.. 간단히 '타르 & gz'-ed up - 그리고 presto - a pacakge.

Dw.

관련 문제