LINUX.ORG.RU

Помогите исправить ебилд

 ,


0

2

Собственно, учусь писать ебилды, пробую написать ебилд для app-text/sdcv относительно новой версии. Вот текущее состояние файла:

# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-text/sdcv/sdcv-0.5.0_beta2.ebuild $

EAPI=5

inherit cmake-utils

DESCRIPTION="Console version of Stardict program"
HOMEPAGE="http://sdcv.sourceforge.net"
MY_PV="0.5.0-beta2-Source"
MY_PF="${PN}-${MY_PV}"
S="${WORKDIR}/${MY_PF}"
SRC_URI="mirror://sourceforge/${PN}/${MY_PF}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="nls"

RDEPEND="sys-libs/zlib
	sys-libs/readline
	>=dev-libs/glib-2.6.1"
DEPEND="${RDEPEND}
	nls? ( >=sys-devel/gettext-0.14.1 )"
src_configure() {
        local mycmakeargs=(
                $(cmake-utils_use_with nls)
        )        
        cmake-utils_src_configure        
}

src_install() {
        cmake-utils_src_install
        dodoc AUTHORS NEWS README THANKS TODO  
}

А вот какую ошибку выдает при попытке установки:

>>> Source compiled.
>>> Test phase [not enabled]: app-text/sdcv-0.5.0_beta2

>>> Install sdcv-0.5.0_beta2 into /portage_tmp/portage/app-text/sdcv-0.5.0_beta2/image/ category app-text
>>> Working in BUILD_DIR: "/portage_tmp/portage/app-text/sdcv-0.5.0_beta2/work/sdcv-0.5.0_beta2_build"
make -j2 install 
[100%] Built target sdcv
Install the project...
-- Install configuration: "Gentoo"
-- Installing: /portage_tmp/portage/app-text/sdcv-0.5.0_beta2/image/usr/bin/sdcv
-- Installing: /portage_tmp/portage/app-text/sdcv-0.5.0_beta2/image/usr/share/man/man1/sdcv.1
-- Installing: /portage_tmp/portage/app-text/sdcv-0.5.0_beta2/image/usr/share/man/uk/man1/sdcv.1
CMake Error at cmake_install.cmake:60 (file):
  file INSTALL cannot find
  "/portage_tmp/portage/app-text/sdcv-0.5.0_beta2/work/sdcv-0.5.0_beta2_build/locale".


Makefile:86: recipe for target 'install' failed
make: *** [install] Error 1
 * ERROR: app-text/sdcv-0.5.0_beta2::localoverlay failed (install phase):
 *   emake failed

Что скажете?

Ответ на: комментарий от ee1337a

Насколько я понимаю, i3 относительно живой и разрабатывается. Хороший ебилд напишут и без меня, а я буду делать это долго и мучительно. Так что пока пытаюсь научиться методом проб и ошибок на старых и полузаброшенных пакетах, которые, тем не менее, мне интересны (я сам использую sdcv, да).

yura_ts ★★ ()
Ответ на: комментарий от ee1337a

Как правило, достаточно просто поменять название ебилда и он всё сам сделает.

2ТС, смотри что вообще там в рабочей директории. Может нужно симейку задать пару переменных.

a1batross ★★★★★ ()
Ответ на: комментарий от Chaser_Andrey

Важно ли, что пробовал не в виртуалке, а на рабочей системе?

yura_ts ★★ ()
Ответ на: комментарий от O02eg

Ну есть там вот такие строчки:

if (ENABLE_NLS)
  find_package(GettextTools REQUIRED)
  set(gettext_stockDir "${CMAKE_CURRENT_SOURCE_DIR}/po")
  set(gettext_langDir  "${CMAKE_CURRENT_BINARY_DIR}/lang")
  set(gettext_outDir   "${CMAKE_CURRENT_BINARY_DIR}/locale")
  set(GETTEXT_TRANSLATIONS_PATH "${CMAKE_INSTALL_PREFIX}/share/locale")
  gettext_make_target("lang"
    HIERARCHY "{1}/{2}/{3}/{4}.mo"
    KEYWORDS  "_"
    DOMAIN    "sdcv"
    STOCK_DIR ${gettext_stockDir}
    LANG_DIR  ${gettext_langDir}
    OUT_DIR   ${gettext_outDir}
    SOURCE    ${sdcv_SRCS})

  list(APPEND makeCleanFiles ${gettext_outDir})
endif ()

Но я ничего тут не понимаю пока что.

yura_ts ★★ ()
Ответ на: комментарий от redhat

Это, конечно, хорошо. Первоначальная задача была «написать хотя бы один ебилд», а не «получить на выходе словарь». Но спасибо.

yura_ts ★★ ()
Ответ на: комментарий от yura_ts

(почитав README.orig) Тебе надо добавить 'make lang' в ебилд:

src_compile() {
    cmake-utils_src_compile
    cmake-utils_src_compile lang
}

и немного сократить dodoc.

Добавил в дерево как:

*sdcv-0.5.0_beta2 (28 Feb 2015)

  28 Feb 2015; Sergei Trofimovich <slyfox@gentoo.org> +sdcv-0.5.0_beta2.ebuild,
  metadata.xml:
  Added new beta by Yuri Tsimbalov.

Спасибо :)

sf ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.