디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

아.. 그리고 freebsd ports에서 patch 만드는 명령 있잖

나르시갤로그로 이동합니다. 2025.10.01 20:24:09
조회 29 추천 0 댓글 0

네, FreeBSD 포트에서 소스 코드를 수정한 후 이를 관리하기 위한 패치(patch) 파일을 생성하는 표준 명령에 대해 설명해 드리겠습니다. 이 과정은 포트 시스템의 핵심적인 부분으로, 수정 사항을 체계적으로 관리할 수 있게 해줍니다.


make makepatch: 자동 패치 생성 명령

FreeBSD 포트에서 패치 파일을 생성하는 표준 명령은 make makepatch 입니다.

이 명령은 포트의 작업 디렉터리(work/) 내에서 원본 파일과 수정된 파일을 자동으로 비교하여, 그 차이점을 diff 형식의 패치 파일로 만들어 files/ 디렉터리에 저장해 줍니다. 이렇게 생성된 패치 파일은 다음부터 make 명령이 실행될 때마다 소스 코드 압축 해제 후 자동으로 적용됩니다.


패치 파일 생성 절차 (단계별 가이드)

다음은 gprbuild 포트의 gnat.xml 파일을 예시로 패치를 생성하는 전체 과정입니다.

1단계: 준비 (클린 상태에서 시작)

가장 먼저, 이전 빌드 결과물이나 다른 패치가 적용되지 않은 깨끗한 상태에서 시작해야 합니다.

# 포트 디렉터리로 이동
cd /usr/ports/devel/gprbuild

# 작업 디렉터리 정리
make clean

# 원본 소스 압축 해제
make extract

이 과정을 거치면 work/ 디렉터리에 원본 소스 파일만 깨끗하게 준비됩니다.


2단계: 파일 수정

이제 패치를 만들고 싶은 파일을 수정합니다. 수정하기 전에 반드시 원본 파일을 .orig 확장자로 복사해야 합니다. make makepatch는 이 .orig 파일을 기준으로 변경 사항을 감지합니다.

# gnat.xml 파일이 있는 위치로 이동
cd work/gprconfig_kb-25.0.0/db/

# 원본 파일을 .orig 확장자로 복사
cp gnat.xml gnat.xml.orig

# 이제 원본 gnat.xml 파일을 편집기로 수정합니다.
# (예: ee gnat.xml 또는 vi gnat.xml)
ee gnat.xml

이 단계에서 <runtimes> 섹션을 올바른 경로로 수정합니다.


3단계: 패치 생성 (make makepatch 실행)

파일 수정이 완료되면, 포트의 최상위 디렉터리로 돌아가 make makepatch 명령을 실행합니다.

# 다시 포트의 최상위 디렉터리로 이동
cd /usr/ports/devel/gprbuild

# 패치 파일 자동 생성
make makepatch

이 명령을 실행하면, 시스템이 work/ 디렉터리 내의 gnat.xmlgnat.xml.orig를 비교하여 diff를 생성하고, 그 결과를 files/ 디렉터리에 patch-로 시작하는 이름의 파일로 저장합니다. 파일 이름은 보통 수정된 파일의 경로를 포함하여 자동으로 생성됩니다 (예: files/patch-work_gprconfig_kb-25.0.0_db_gnat.xml).


4단계: 검증 및 빌드

패치가 올바르게 생성되었는지 확인하고 최종적으로 빌드합니다.

# 다시 작업 디렉터리를 정리
make clean

# 패치가 잘 적용되는지 테스트 (선택 사항)
make patch

# 최종 빌드
make

make를 실행하면, 포트 시스템은 소스 압축 해제 후 files/ 디렉터리에 있는 패치를 자동으로 적용하고 빌드를 시작합니다. 이제 수정 사항이 영구적으로 반영되어 매번 동일한 방식으로 빌드됩니다.

이것이 FreeBSD 포트 시스템에서 수정 사항을 관리하는 가장 표준적이고 올바른 방법입니다. ?+


추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 우리나라를 대표해서 UN 연설자로 내보내고 싶은 스타는? 운영자 25/09/29 - -
AD 프로게이머가 될테야!! 운영자 25/10/01 - -
공지 프로그래밍 갤러리 이용 안내 [96] 운영자 20.09.28 47630 65
2893854 'ㅎㅂ) 벗방 시작한 강 인 경 프갤러(14.52) 04:59 0 0
2893835 타직종인데 개발자로 테크트리 다시타고싶습니다 [11] 프갤러(115.21) 01:39 42 0
2893834 이번 체인소맨 영화 재밌게 봤으면 발레리나를 봐보셈... ㅇㅇ(223.39) 01:38 19 0
2893830 신입한테요구하는거 죤나많네 시발새끼들 프갤러(211.235) 01:23 28 0
2893827 34살에 빚이천만원있음.. [3] ㅇㅇ(175.197) 01:00 49 0
2893826 이번 추석명절 유흥 반값에 가는법 꿀팁 ㅇㅇ(118.235) 00:47 20 0
2893825 4050이 나라를 살린다 [1] 야옹아저씨갤로그로 이동합니다. 00:14 38 0
2893824 로코프로토콜로 뭐만들면 불법임? 프갤러(124.59) 00:08 25 0
2893821 막걸리 한 병 깠다 [4] ㅇㅇ(121.168) 10.03 39 0
2893818 공산독재 리죄명 치하에서 이진숙 강제체포 여파 큰듯 [1] ♥냥덩이♥갤로그로 이동합니다. 10.03 48 0
2893816 나님 내년 1분기까지 노워킹 온리조깅으로 30km 도전 [2] ♥냥덩이♥갤로그로 이동합니다. 10.03 39 0
2893813 현시대는 토발즈도 1찍 짱깨편인 무서운 시대이다ㅋㅋ번식 더 해줘라 이기 타이밍뒷.통수한방(1.213) 10.03 20 0
2893809 지듣노 ㅁㅌㅊ? [3] 노력갤로그로 이동합니다. 10.03 38 1
2893808 인생은 운이다 [2] ㅇㅇ(121.168) 10.03 43 1
2893807 걷기 싫어하는 나님의 습성도 리죄명 짱깨 무비자 입국에서 비롯됐다 [3] ♥냥덩이♥갤로그로 이동합니다. 10.03 39 0
2893805 ㄸㄸㄹ ♥냥덩이♥갤로그로 이동합니다. 10.03 20 0
2893801 rtos 리스트 하드웨어 잘되는 순서로 정렬 발명도둑잡기(118.216) 10.03 37 0
2893799 ■요즘 Si 신입 대세포폴이 뭐에요? [3] ㅇㅇ갤로그로 이동합니다. 10.03 49 0
2893795 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥냥덩이♥갤로그로 이동합니다. 10.03 38 0
2893794 저녁 아직 안 먹었는데 [1] 발명도둑잡기(118.216) 10.03 42 0
2893793 노오오력 하면 된단다 발명도둑잡기(118.216) 10.03 27 0
2893791 엠마 왓슨이 범죄의 아이콘이 된 이유 발명도둑잡기(118.216) 10.03 37 0
2893789 Wolfenstein3D on 8bit consoles 발명도둑잡기(118.216) 10.03 23 0
2893786 공부에 다른방도 없는듯... 그냥 매일 계속 꾸준히 하는것밖에 없음 ㅇㅇ(223.39) 10.03 30 1
2893782 차단해도 댓글 계속 달리는거 ㄹㅇ 짜증남 ㅆㅇㅆ(124.216) 10.03 35 1
2893778 ㅆㅇㅆ 접밥 비린내나는 새기가 먼 gpt를 이겨 ㅋㅋ 프갤러(210.217) 10.03 60 5
2893777 내가 느끼는게 아무리 날고 기어도 구현을 지피티 못이기겠음 [2] ㅆㅇㅆ(124.216) 10.03 72 0
2893776 일본 취업 유학 워홀 여행 관련모임 ㅇㅇ(106.146) 10.03 54 0
2893775 형이 드디어 돈복사 프로그램 만듬 [1] ㅇㅇ(14.5) 10.03 38 0
2893773 이번에 GPT랑 나랑 같은거 코딩해봤는데 지피티가 훨 낫더라. [2] ㅆㅇㅆ(124.216) 10.03 69 3
2893772 힙합 갤러리 10조 갑부 발명도둑잡기(118.235) 10.03 21 0
2893769 ■WSL→도커→이클립스 이렇게쓰는데 쓸데없는짓임? [4] ㅇㅇ갤로그로 이동합니다. 10.03 61 0
2893768 오늘 중국친구가 나보고 재능있대서 기분좋음 [3] ㅆㅇㅆ찡갤로그로 이동합니다. 10.03 48 0
2893764 여러분 ai 코딩 플러그인으로 쓰시나요? [1] ㅇㅇ(106.102) 10.03 31 0
2893761 이번 연휴 달붕이들 꿀팁 푼다 꼭 봐라ㅋㅋㅋㅋ ㅇㅇ(118.235) 10.03 29 0
2893760 AI 로 코딩하기.....ㅋㅋㅋㅋ [1] 프갤러(59.16) 10.03 50 0
2893759 전자담배로 해킹 발명도둑잡기(118.235) 10.03 26 0
2893758 [애니뉴스] 귀인환등초 24화 완결? 프갤러(121.172) 10.03 21 0
2893757 [대한민국] 모스탄, 세계 대전 언급, 고든창 박사, 이재명 차기 독재자 [1] 프갤러(121.172) 10.03 31 0
2893755 전자담배 해킹 [2] 발명도둑잡기(118.235) 10.03 36 0
2893754 취직후 회사 내 노트북 쓰려고 가져가면 "윈도우정품" << 문제됨? [6] 프갤러(180.230) 10.03 54 0
2893753 일회용 전담에 아치 깔아봄 [7] 프갤러(1.250) 10.03 78 2
2893751 내 자신을 회복하는 중이다 ㅇㅇ(121.168) 10.03 26 0
2893750 5시간 반 잤더니 졸리다 발명도둑잡기(118.216) 10.03 24 0
2893749 본인 버킷리스트 [7] 공기역학갤로그로 이동합니다. 10.03 72 0
2893748 지금 갑자기 놀이라는 단어가 매우 안익숙하게 느껴짐 [7] 공기역학갤로그로 이동합니다. 10.03 51 0
2893747 엔젤리너스 바람물질인 검은빨대 사용하는군요 [1] 헬마스터갤로그로 이동합니다. 10.03 35 0
2893746 다시 보는 드럼통의 청와대 ㅇㅇ(121.168) 10.03 31 1
2893745 게임땔깜지망생에서 은퇴한이유 [36] 공기역학갤로그로 이동합니다. 10.03 134 0
뉴스 악뮤 수현, 아이유 패션 지적 “예쁜 옷만 입지…” 울상 디시트렌드 10.03
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2