Linux 如何正确编写Gentoo的ebuild
是否有人可以帮助为创建ebuild?这是我的工件ebuild(针对osc修改了ebuild): 覆盖信息:Linux 如何正确编写Gentoo的ebuild,linux,package,gentoo,Linux,Package,Gentoo,是否有人可以帮助为创建ebuild?这是我的工件ebuild(针对osc修改了ebuild): 覆盖信息: ls /usr/local/portage/dev-util/gbs/ Manifest gbs-0.13.tar.gz gbs-0.13_alpha.ebuild gbs-0.13_alpha.tar.gz cat /etc/portage/make.conf | grep DISTDIR DISTDIR="/usr/local/portage/distfiles" emerg
ls /usr/local/portage/dev-util/gbs/
Manifest gbs-0.13.tar.gz gbs-0.13_alpha.ebuild gbs-0.13_alpha.tar.gz
cat /etc/portage/make.conf | grep DISTDIR
DISTDIR="/usr/local/portage/distfiles"
emerge -s "%@dev-util/gbs"
* dev-util/gbs
Latest version available: 0.13_alpha
Latest version installed: [ Not Installed ]
Size of files: 0 kB
Homepage: https://source.tizen.org/documentation/reference/git-build-system
Description: Command line tool for building packages for Tizen platform
License: GPL-2
当我试图编译这个ebuild(至少是解包)时,我得到了以下错误。
解包源代码的输出:
ebuild /usr/local/portage/dev-util/gbs/gbs-0.13_alpha.ebuild unpack
>>> Existing ${T}/environment for 'gbs-0.13_alpha' will be sourced. Run
>>> 'clean' to start with a fresh environment.
>>> Not marked as unpacked; recreating WORKDIR...
* checking ebuild checksums ;-) ... [ ok ]
* checking miscfile checksums ;-) ... [ ok ]
>>> Unpacking source...
>>> Unpacking gbs-0.13_alpha.tar.gz to /var/tmp/portage/dev-util/gbs-0.13_alpha/work
* ERROR: dev-util/gbs-0.13_alpha failed (unpack phase):
* gbs-0.13_alpha.tar.gz does not exist
*
* Call stack:
* ebuild.sh, line 93: Called src_unpack
* environment, line 3719: Called unpack 'gbs-0.13_alpha.tar.gz'
* phase-helpers.sh, line 297: Called die
* The specific snippet of code:
* [[ ! -s ${srcdir}${x} ]] && die "${x} does not exist"
*
* If you need support, post the output of `emerge --info '=dev-util/gbs-0.13_alpha'`,
* the complete build log and the output of `emerge -pqv '=dev-util/gbs-0.13_alpha'`.
* This ebuild is from an overlay named 'x-portage': '/usr/local/portage/'
* The complete build log is located at '/var/tmp/portage/dev-util/gbs-0.13_alpha/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-util/gbs-0.13_alpha/temp/environment'.
* Working directory: '/var/tmp/portage/dev-util/gbs-0.13_alpha/work'
* S: '/var/tmp/portage/dev-util/gbs-0.13_alpha/work/gbs-0.13_alpha'
您尚未定义SRC_URI。这就是它用来下载tarball的方法。您不会将其包含在ebuild目录中。即使您事先已经下载了它,也要坚持使用/usr/portage/distfiles
此外,您的所有功能(可能除了pkg_设置,不确定)都是冗余的。默认函数将正常工作,因此请删除它们。您尚未定义SRC\u URI。这就是它用来下载tarball的方法。您不会将其包含在ebuild目录中。即使您事先已经下载了它,也要坚持使用/usr/portage/distfiles 此外,您的所有功能(可能除了pkg_设置,不确定)都是冗余的。默认函数将正常工作,因此请删除它们
ebuild /usr/local/portage/dev-util/gbs/gbs-0.13_alpha.ebuild unpack
>>> Existing ${T}/environment for 'gbs-0.13_alpha' will be sourced. Run
>>> 'clean' to start with a fresh environment.
>>> Not marked as unpacked; recreating WORKDIR...
* checking ebuild checksums ;-) ... [ ok ]
* checking miscfile checksums ;-) ... [ ok ]
>>> Unpacking source...
>>> Unpacking gbs-0.13_alpha.tar.gz to /var/tmp/portage/dev-util/gbs-0.13_alpha/work
* ERROR: dev-util/gbs-0.13_alpha failed (unpack phase):
* gbs-0.13_alpha.tar.gz does not exist
*
* Call stack:
* ebuild.sh, line 93: Called src_unpack
* environment, line 3719: Called unpack 'gbs-0.13_alpha.tar.gz'
* phase-helpers.sh, line 297: Called die
* The specific snippet of code:
* [[ ! -s ${srcdir}${x} ]] && die "${x} does not exist"
*
* If you need support, post the output of `emerge --info '=dev-util/gbs-0.13_alpha'`,
* the complete build log and the output of `emerge -pqv '=dev-util/gbs-0.13_alpha'`.
* This ebuild is from an overlay named 'x-portage': '/usr/local/portage/'
* The complete build log is located at '/var/tmp/portage/dev-util/gbs-0.13_alpha/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-util/gbs-0.13_alpha/temp/environment'.
* Working directory: '/var/tmp/portage/dev-util/gbs-0.13_alpha/work'
* S: '/var/tmp/portage/dev-util/gbs-0.13_alpha/work/gbs-0.13_alpha'