У меня есть два проекта в моем каталоге пользователей ~
, проект A
и B
. Я запускаю stack init
и позже stack build
по проекту A
. Затем у меня есть двоичные файлы пакета A
в папке ~/.stack-work/install/x86_64-linux/lts-6.0/7.10.3/bin
. Проблема B
нуждается в этой версии двоичных файлов из пакета A
, а затем попробуйте ту же самую сборку с stack
в каталоге проекта B
. Я пробовал ~/B
выполнить следующую команду без успеха.Стек с использованием двоичных файлов другого пакета
stack build ~/.stack-work/install/x86_64-linux/lts-6.0/7.10.3/bin
Как я могу это сделать? Что делать, если я создаю третий пакет C
, и нужно что-то подобное?
Выдержки:
A.cabal
содержание.
name: A
version: 1.1
И B.cabal
.
name: B
version: 1.0
build-depends: A>= 1.1
Затем
$ stack init
Looking for .cabal or package.yaml files to use to init the project.
Using cabal packages:
- B.cabal
Selecting the best among 8 snapshots...
* Partially matches lts-6.0
A version 1.0 found
- A requires ==1.1
Это может быть решена путем: - Использование «--omit-пакеты, чтобы исключить несовпадение пакет (ы). - Используя '--resolver', чтобы указать соответствующий снимок/резольвер
Но у меня на самом деле есть версия 1.1 от A
build.
Можете ли вы разместить свои .cabal файлы из обоих проектов? Попробуйте придумать наименьший пример, демонстрирующий проблему. Я хотел бы видеть в файле .cabal, как проект B относится к материалам из проекта A. – ErikR
Я обновил вопрос. – jonaprieto