소스 코드에서 프로그램을 컴파일하고 설치하는 방법

소스 코드에서 프로그램을 컴파일하고 설치하는 방법

이 문제는 Linux에 대한 나의 즐거움을 정말로 제한합니다. 앱이 저장소에 없거나 설치 프로그램 스크립트가 없으면 소스에서 앱을 설치할 위치와 방법이 정말 막막합니다.

Windows와 비교하면 쉽습니다. 마법사의 모든 작업을 수행하려면 (거의) 설치 프로그램을 사용해야 합니다. Linux의 경우... 그다지 많지는 않습니다.

그렇다면 이에 대한 제안이나 지침이 있습니까? 아니면 소스에서 Linux 프로그램을 설치하는 방법, 이유, 위치를 명확하게 설명하는 웹 사이트가 있습니까?

답변1

일반적으로 프로젝트에는 빌드 및 설치 방법에 대한 지침이 포함된 웹사이트가 있습니다. 먼저 구글링해 보세요.

대부분의 경우 다음 중 하나를 수행합니다.

  1. 특정 버전의 소스 코드 배포판인 tarball(tar.gz 또는 tar.bz2 파일)을 다운로드합니다.
  2. tar zxvf myapp.tar.gzgzipped tarball 또는 bzipped tarball tar jxvf myapp.tar.bz2과 같은 명령을 사용하여 타르볼을 추출합니다.
  3. 위에서 만든 디렉토리로 cd
  4. 달리기./configure && make && sudo make install

또는:

  1. git, svn 또는 기타 방법을 사용하여 공식 소스 코드 저장소에서 최신 소스 코드를 추출하세요.
  2. 위에서 만든 디렉토리로 cd
  3. 달리기./autogen.sh && make && sudo make install

configure와 autogen.sh는 모두 --prefix 매개변수를 허용하여 소프트웨어가 설치된 위치를 지정합니다. 확인해 보시는 걸 추천드려요내가 직접 컴파일한 소프트웨어를 어디에 넣어야 하나요?맞춤형 소프트웨어를 설치하기에 가장 좋은 장소에 대한 조언.

답변2

소스에서 패키지를 컴파일하고 모든 패키지 종속성, 플래그 등을 처리하는 패키지 관리자가 있다는 점을 추가하고 싶었습니다.

BSD 시스템에서는 다음과 같습니다 ports.포트 컬렉션 사용

Debian에서는 apt-get패키지 관리자를 소스에서 설치할 수도 있습니다.APT HOWTO: 소스 패키지 사용(Ubuntu, Linux-mint 및 기타 모든 Debian 기반 시스템에서도 마찬가지입니다)

젠투 배포판은 portage소스 코드로만 전체 시스템을 컴파일하는 패키지 관리자를 사용합니다:포티지 소개.

Slackware는 패키지를 컴파일할 수 있지만 거기에 패키지 관리자가 있는지는 모르겠습니다..=)

어쨌든 위에서 언급한 Sandy처럼 언제든지 패키지를 수동으로 컴파일할 수 있습니다 =) 또한 다른 배포판에서도 패키지 관리자를 사용할 수 있어야 합니다 apt-get...portage

답변3

설치하려는 특정 프로그램이나 응용 프로그램과 함께 제공되는 설명서를 읽는 것이 가장 좋다고 생각합니다. tarball(일반적으로 다운로드할 수 있는 애플리케이션 소스 아카이브) 내에 readme/readme 파일이 있는 경우가 많으며, 해당 애플리케이션을 설치하는 데 선호되는 방법을 읽고 이해할 수 있는 설치 파일이 있을 수도 있습니다. 짧게 말하면: RTFM ;)

답변4

최근에는 패키지 관리자가 아닌 소스에서 설치할 때 "Checkinstall"을 사용하기 시작했습니다. 타사 tarball에서 "패키지"를 빌드한 다음 패키지 관리자 도구를 통해 설치 및 관리(및 제거)할 수 있습니다.

이 기사를 확인해보세요 -http://www.linuxjournal.com/content/using-checkinstall-build-packages-source

관련 정보