[하우투] 아치 리눅스 소프트웨어 패키지 및 파생물 생성

내가 아치 리눅스와 그 파생물에 대해 가장 좋아하는 것 중 하나는 엄청난 용이함 알려진 것과 달리 나중에 시스템에 설치할 패키지를 만들려면 데비안 / 우분투 / 리눅스 민트 등의 혼란이 있습니다 (그리고 라이브러리라면 말하지 않습니다).

기본 템플릿은 다음과 같습니다.

# Maintainer:
pkgname=
pkgver=
pkgrel=
pkgdesc=
arch=()
url=
license=()
groups=()
depends=()
makedepends=()
source=()
md5sums=()

build() {
...
}
package() {
...
}

이제 각 매개 변수를 설명하겠습니다.

  • # 관리자 : 그 안에 패키지 관리자의 이름이 들어 있습니다.
  • pkgname : 패키지의 이름입니다. 문자, 숫자,-, _ 및 + 만 포함 할 수 있습니다.
  • pkver : 패키지 버전. pe 1.0.0
  • pkgrel : 프로그램 또는 패키지 검토. pe 1
  • pkgdesc : 패키지 설명.
  • 아치: 프로그램의 아키텍처 : 임의 (모든 사람), i686 및 x86_64 일 수 있으며 bash 또는 python 프로그램과 같이 컴파일이 필요하지 않은 패키지를위한 것입니다. 필요한 프로그램 인 경우 (예 : C 또는 C ++의 프로그램) 686 비트 용인 경우 i32, 86 비트 용인 경우 x64_64를 표시해야합니다. 일반적으로 둘 다 호환되는 경우 설정됩니다 (i686, x86_64).
  • URL : 프로그램의 공식 페이지에 대한 URL. 그것을 넣는 것이 좋습니다.
  • 라이센스 : 프로그램 라이센스. 예 : GPL3
  • 여러 떼: 패키지가 속한 그룹. 그룹 = ( '시스템')
  • 의존합니다 : 여기에는 프로그램 실행에 필요한 패키지가 표시됩니다. pependens = ( 'python2' 'pygtk')
  • makedepends : 패키지를 컴파일하는 데만 필요한 종속성. 버전 관리자에서 코드를 다운로드하려면 코드를 입력하는 것이 좋습니다. pe : makedepends = ( 'git')
  • 출처 : 여기에는 패키지 생성에 필요한 파일이 표시됩니다. 일반적으로 코드, 패치, .desktopt 파일, 아이콘 등이 포함 된 패키지의 URL입니다. pe : 소스 = (pacsyu.desktop)
  • md5sums : 다음은 소스에 표시된 파일의 md5 합계입니다. PKGBUILD가있는 폴더의 터미널에서 실행되는 파일을 확인하려면 (소스에 파일 경로를 작성했습니다) makepkg -g 합계가 화면에 나타납니다.
    sh1과 같은 다른 합계를 사용할 수도 있습니다.
  • 짓다: 이 함수에서 우리는 소프트웨어 컴파일을 진행하는 데 필요한 명령. 컴파일이 필요하지 않은 경우 다음 함수 만 필요)
  • 패키지 :이 다른 기능에서 프로그램 설치 명령이 실행됩니다. 예를 들어 여기서 C 코드를 컴파일하는 경우 make install이 진행됩니다.

그리고 끝내기 위해 우리는 메이크팩 패키지가 생성되었는지 확인합니다.
보시다시피 우리에게는 어렵습니다. 그런 다음 몇 가지 추가 매개 변수를 남겨 둡니다. makepkg :

  • -나는: makepkg가 패키지를 만든 후 설치하도록 지시합니다.
  • -에스: 리포지토리에있는 경우 패키지 종속성을 설치합니다.
  • -에프: 이 매개 변수가있는 해당 이름, 버전 및 개정을 가진 패키지가 이미있는 경우이를 덮어 쓰도록 지시합니다.
  • -씨: 완료되면 작업 폴더 (pkg 및 소스)를 정리합니다.
  • -아르 자형: 다시 컴파일 할 필요없이 패키지를 다시 패키징합니다.

더 많은 예제를 보려면 더 많은 PKGBUILD 파일을보고 명령을 실행하는 것이 좋습니다. makepkg -h 나머지 프로그램 매개 변수를 확인하고 Arch Linux Wiki의 makepkg 공식 문서 당신은 무엇을 찾을 수 있습니까 여기에


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   자민 사무엘

    아주 좋아요…

    .exe 패키지를 Arch 패키지로 관리 (컴파일) 할 수 있습니까?

    예를 들어 유명한 다운로드 관리자처럼 미 포니 ??

    1.    적절한

      내가 아는 한 .exe는 소스 코드가 아니라 바이너리라는 것을 기억하십시오. 그러나 JDownloader가 있습니다.

    2.    v3on

      누군가는 리눅스를 사용하고 Myponi를 그리워합니다…

      jDownloader는 Java에 있으며 Java가 폐암을 유발한다는 사실은 모두에게 잘 알려져 있습니다.

  2.   유백색 28

    흥미롭게도, 우리는 패키지를 테스트해야 할 것 같습니다. 저는 qbittorrent의 hahaha가 이미 yaourt에 존재하지만 자신의 버전을 테스트하는 것이 나쁘지 않을 것이라고 생각합니다. 정보 인사 감사합니다.

  3.   MSX

    좋은 입력, +1
    Gentoo ebuild보다 만들고 유지하기가 더 쉽다고 덧붙이고 싶습니다!

    데비안과 관련하여이 배포판은 현대화하거나 더 현대적인 패키지 및 패키지 관리 시스템으로 마이그레이션하는 것만으로도 핸디캡을 크게 높일 것이라고 생각합니다. dpkg / apt 세트의 마지막 업데이트가 언제 일지는 모르겠지만 개념은 이미 쉽게 가질 수 있습니다. 15 년이 지난 지금은 시대 착오적입니다.

  4.   썩은 87

    대단히 감사합니다. 위키에서 그것을 찾는 동안 조금했지만 구조를 이해하지 못했지만 (PlayonLinux를 업데이트하고 싶었습니다), 여전히 포기했습니다 ... 어시스턴트 나 그와 비슷한 것을 갖고 싶은 것 (저를 쏘지 마세요)이 있지만 여전히 ... 시간이 지남에 따라 도구가없는 경우에는

    1.    MSX

      귀하의 가이드 덕분에 Zeya의 PKGBUILD (http://web.psung.name/zeya/), 완료하자마자 AUR에 업로드합니다 🙂

  5.   hypersayan_x

    엉망인 데비안 / 우분투 / 리눅스 민트 등의 잘 알려진 .deb와는 달리

    전적으로 동의합니다. 얼마 전에 우분투 용 패키지를 만들려고했지만 만드는 방법에 대한 이해할 수있는 정보를 찾을 수 없었습니다. 결국 프로그램을 포기하고 대략적으로 설치했습니다.
    Arch의 동일한 프로그램으로 패키지를 구성하는 데 5 분도 걸리지 않았습니다.
    그리고 확실하지는 않지만 RPM이 DEB보다 약간 더 쉽지만 Arch보다 어렵다고 생각합니다.

  6.   핵 로퍼 775

    매우 좋고 쉬우 며 .deb에 관해서는 iOS의 경우 그렇게 어렵지 않습니다.

    안부

  7.   카를로스

    AUR에 첫 번째 PKGBUILD를 업로드했을 때 얼마 전에 이것이 저에게 도움이되었을 것이라고 생각합니다.

  8.   클레 라펠

    누군가 나에게 그것이 무엇인지 설명 할 수 있습니까? 저는 새롭고 이것이 .deb 패키지를 설치하는 데 도움이되는지 모르겠지만 정확히 게임 인 manjaro에서 로컬입니다. 예, 작동합니까?