ALT Linux Team development discussions
 help / color / mirror / Atom feed
* Re: [devel] Ложные зависимости при сборке пакета
  @ 2018-04-08 13:39 ` Ivan Zakharyaschev
  2018-04-08 17:29 ` Ivan Zakharyaschev
  1 sibling, 0 replies; 2+ messages in thread
From: Ivan Zakharyaschev @ 2018-04-08 13:39 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 1482 bytes --]

Hello!

On Sun, 8 Apr 2018, Eugine Kosenko wrote:

> Если коротко, то как правильно и проще всего подавить такие ложные
> зависимости?

В сути конкретной проблемы я пока не разбирался. Предполагаю, что 
правильным решением будет -- изменить поведение автогенератора 
зависимостей и Provides. Какая-то его часть может леажть в пакетах 
rpm-build-haskell и пр.

> А в целом интересно, что можно почитать о том, как rpmbuild строит
> зависимости в ALT, и как этим управлять? Или достаточно Maximum RPM?

Скорее Maximum RPM недостаточно. Потому что к upstream-ному механизму 
подцеплены наши. Добавил ссылки на https://www.altlinux.org/Rpm/AutoReq :

* Алексей Турбин. Автоматический поиск зависимостей в rpm-пакетах // 
[http://www.altlinux.ru/media/protva4.pdf 4ая конференция разработчиков 
свободных программ на Протве (2007)], стр. 59-63.

* 
[http://git.altlinux.org/gears/r/rpm-build.git?p=rpm-build.git;a=history;f=autodeps;hb=HEAD 
rpm-build.git/autodeps/ history]


-- 
Best regards,
Ivan

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [devel] Ложные зависимости при сборке пакета
    2018-04-08 13:39 ` [devel] Ложные зависимости при сборке пакета Ivan Zakharyaschev
@ 2018-04-08 17:29 ` Ivan Zakharyaschev
  1 sibling, 0 replies; 2+ messages in thread
From: Ivan Zakharyaschev @ 2018-04-08 17:29 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 3838 bytes --]


On Sun, 8 Apr 2018, Eugine Kosenko wrote:

> После сборки пакета ghc8.0.1 при попытке его установить его в систему
> возникает куча неудовлетворенных зависимостей:
> 
> # rpm -i ghc8.0.1-8.0.1-alt1.x86_64.rpm
> ошибка: Неудовлетворенные зависимости:
>         ghc8.0.1(array) = array нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(base) = base нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(binary) = binary нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(bytestring) = bytestring нужен для
> ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(containers) = containers нужен для
> ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(deepseq) = deepseq нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(directory) = directory нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(filepath) = filepath нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(ghc) = boot нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(ghc) = prim нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(ghc-boot) = th нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(ghci) = ghci нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(hoopl) = hoopl нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(hpc) = hpc нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(integer) = gmp нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(pretty) = pretty нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(process) = process нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(template) = haskell нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(terminfo) = terminfo нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(time) = time нужен для ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(transformers) = transformers нужен для
> ghc8.0.1-8.0.1-alt1.x86_64
>         ghc8.0.1(unix) = unix нужен для ghc8.0.1-8.0.1-alt1.x86_64
> 
> Суть в том, что все эти библиотеки входят в ядро ghc и предоставляются
> самим этим пакетом. При форсировании установки получается вполне
> работоспособная версия, на которой удалось собрать ghc8.4.1 (именно этого я
> сейчас добиваюсь). При сборке модифицированного ghc7.6.1 и даже ghc7.10.1
> такой проблемы не возникало, хотя для спека во всех этих случаях я беру
> один и тот же спек ghc7.6.1.spec из текущего Сизифа. На всякий случай
> присоединяю к этому письму ghc8.0.1.spec.
> 
> Если коротко, то как правильно и проще всего подавить такие ложные
> зависимости?

Мне кажется предпочтительным не подавлять зависимости, а заставить 
сгенерировать соответствующие Provides . Это будет правдой и полезно для 
удовлетворения таких зависимостей в других пакетах, если они возникнут.

(В итоге в таком случае в этом пакете они просто будут соптимизированы 
самим rpm-build, чтобы не было у него большого количества ничего не 
значащих Requires.)

-- 
Best regards,
Ivan

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-04-08 17:29 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-08 13:39 ` [devel] Ложные зависимости при сборке пакета Ivan Zakharyaschev
2018-04-08 17:29 ` Ivan Zakharyaschev

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git