Использование GHC API из GHC, скомпилированного из исходников

Я хотел бы в клиентской программе использовать API GHC из модифицированной версии GHC. Достаточно просто получить исходники GHC, собрать и установить модифицированный GHC, но установка модифицированного GHC приводит к разрыву всех старых (Cabal) зависимостей.

Следовательно, я не могу использовать API GHC, поскольку ghc -v говорит:

пакет ghc-7.0.3-... непригоден для использования из-за отсутствия или рекурсивных зависимостей:...

Любые подсказки о том, как действовать?

Спасибо!,

Ранджит.


person Ranjit Jhala    schedule 19.05.2011    source источник
comment
Какие модификации GHC вы делаете?   -  person Don Stewart    schedule 20.05.2011


Ответы (1)


Вы должны создать пользовательскую версию GHC сначала, а затем установить все необходимые пакеты. Таким образом, все будет связано с вашим пользовательским GHC, и все будет в порядке.

person Don Stewart    schedule 19.05.2011
comment
Хорошо, позвольте мне попробовать следующее: 1. установить двоичный файл ghc-7.0.3, затем 2. использовать его для сборки/установки модифицированного ghc? Я попробую. Однако означает ли это, что каждый раз, когда я переустанавливаю GHC, мне, возможно, придется переустанавливать все остальное? (На данный момент модификаций нет, я просто пытаюсь использовать GHC-API из пользовательской сборки в качестве разминки...) В более долгосрочной перспективе я пытаюсь добавить немного больше исходной информации SrcSpan в CoreExpr. .. - person Ranjit Jhala; 20.05.2011
comment
Похоже, вы довольно хорошо сломали сборку GHC. - person Don Stewart; 20.05.2011
comment
Уф, похоже, потому что последний GHC (7.1.XXX) использует Cabal-1.11, который отбрасывает сценарии сборки платформы haskell. Я только что собрал собственный GHC из исходников версии 7.0.3, и он работает нормально. Благодарность! - person Ranjit Jhala; 20.05.2011
comment
На самом деле вышеописанное не сработало. Саймон Марлоу указал мне на это, которое работает как шарм... - person Ranjit Jhala; 20.05.2011