미리 필요한 것
이전
다음

미리 필요한 것

이 안내서는 읽는 분이 리눅스 배포판에서 소스로 부터 소프트웨어를 만들고 설치하는 적절한 지식을 가지고 있는 것으로 가정 합니다. 이 안내서는 또한 명령어 라인 인터페이스 (CLI) 를 도처에서 사용하므로, 여러분은 터미널을 사용하는데 익숙해야 합니다. 아래는 빠른 개요 또는 몇 가지 필요한 지식의 검토 입니다.

make

설명:

GNU Make 는 매우 중요한 소프트웨어 빌드 도구 입니다. 이것은 복잡한 컴파일 작업을 사소한 것으로 전환하는 데 이용 됩니다. 우리는 Makefile 내에 패키징 절차에 관한 대부분의 정보를 저장하므로, 이것을 어떻게 사용하는지 아는 것이 중요 합니다.

참조:

GNU Make는 잘 쓰여진 man 페이지와 확장의 info 문서를 가지고 있습니다. 또한 문서는 GNU 웹 사이트에서 이용 가능합니다.

./configure

설명:

이 스크립트는 거의 모든 리눅스 소스에 포함되어 있고, C와 C++ 같은 컴파일 언어로 작성된 소프트웨어의 경우는 특히 그러 합니다. 이것은 여러분의 시스템에 적절히 설정된 Makefile ( make 에 의해 사용되는 파일) 을 생성하는데 사용 됩니다. 표준의 데비안 패키징 도구는 이것을 사용하므로, configure 스크립트가 무엇을 하는지를 아는 것은 중요 합니다. 소프트웨어 작성자 (또는 autoconf ) 가 스크립트를 만들므로, configure 파일을 손수 어떻게 만드는 지를 알 필요는 없습니다. 그러나, 정확히 만든 우분투 패키지를 갖기 위해 어떤 때는 그 스크립트를 조정해야만 하기도 합니다.

빠른 하우투:

첫번째, GNU Hello 소스를 가집니다. 터미널에서:

wget http://ftp.gnu.org/gnu/hello/hello-2.1.1.tar.gz # 소스 패키지 받기
tar -xzf hello-2.1.1.tar.gz # 소스 패키지 압축 풀기
cd hello-2.1.1/
			

이제, 여러분의 시스템에 맞춰진 Makefile 을 생성하기 위해 ./configure 명령으로 configure 스크립트를 실행할 수 있습니다.

또한 ./configure 명령어 라인 옵션을 줄 수도 있습니다. 예를 들어, 기본적으로 GNU Hello/usr/local/ 디렉토리에 설치가 됩니다. 그것을 다른 곳에 (예로, 개인 바이너리 디렉토리, ~/programs/ ) 설치할 수도 있습니다.

./configure --prefix="$HOME/programs/" # 설치 디렉토리를 지정 합니다.

모든 ./configure 옵션은 ./configure --help 를 실행하여 볼 수 있습니다.

참조:

./configure 에 대한 정보는 make 문서에서 찾을 수 있습니다.

Apt/Dpkg

프로그램 설치의 기초적 사용을 넘어, aptdpkg 는 패키징을 위해 유용한 많은 기능을 가지고 있습니다.

  • apt-cache dump - 캐쉬 내의 모든 패키지를 나열 합니다. 이 명령은 특히 이름 또는 의존 패키지가 “foo” 를 포함하는 패키지를 찾기 위해 apt-cache dump | grep foo 처럼 grep 파이프와 결합할 때 도움이 됩니다.

  • apt-cache policy - 패키지가 존재하는 저장소 (main/restricted/universe/multiverse) 를 나열 합니다.

  • apt-cache show - 바이너리 패키지에 대한 정보를 보여 줍니다.

  • apt-cache showsrc - 소스 패키지에 대한 정보를 보여 줍니다.

  • apt-cache rdepends - 무슨 패키지가 쿼리한 패키지를 필요로 하는지, 패키지의 역 의존성을 보여 줍니다.

  • dpkg -S - 특정 파일이 속하는 바이너리 패키지를 나열 합니다.

  • dpkg -l - 현재 설치된 패키지를 나열 합니다. 이것은 apt-cache dump 와 비슷하지만 설치된 패키지들만을 위해서 입니다.

  • dpkg -c - 바이너리 패키지의 내용물을 나열 합니다. 이것은 올바른 곳에 파일들이 설치 되었는지 확인하는데 유용 합니다.

  • dpkg -f - 바이너리 패키지의 control 파일을 보여 줍니다. 이것은 의존성이 올바른 지를 확인하는데 유용 합니다.

  • grep-dctrl - 패키지 내에 특정한 정보를 검색 합니다. 이것은 grep 패키지의 특정한 사용 입니다. (기본으로 설치되지 않습니다.)

diff 와 patch

diff 프로그램은 두 파일을 비교하고 패치를 만드는데 사용할 수 있습니다. 전형적인 예는 diff -ruN file.old file.new > file.diff 입니다. 이 명령은 두 파일 간의 변경 또는 “delta” 를 보여주는 (디렉토리가 사용 되었다면 재귀적으로) diff 를 만듭니다.

patch 프로그램은 패치 (보통 diff 또는 다른 비슷한 프로그램으로 만든) 를 파일 또는 디렉토리에 적용하기 위해 사용 됩니다. 위에서 만든 패치를 적용하려면, patch -p0 < file.diff 를 실행 합니다. -p 는 패치 내의 파일 이름을 위한 경로를 얼마나 벗어야 하는지를 patch 에게 알려 줍니다. -p0 는 아무 것도 벗어야 할 것이 없거나 경로를 그대로 나두는 것을 의미 합니다.

이전
다음
처음으로