2013-03-27 12 views
8

Załóżmy, że chcę używać różnych wersji GHC, z których każda ma inną nazwę binarną.Czy można zainstalować więcej niż jedną ghc i zmienić nazwę binarną każdej instalacji?

Pytanie 1. Czy mogę używać ./configure --prefix = ghc-jakiś-version-dir dla każdej z instalacji i tworzyć dowiązania symboliczne ghc-7.4.1, ghc-7.6.2, ghc-head bez problemów?

Oznacza to, że po instalacji i tworzeniu plików binarnych z kodu źródłowego. Korzystanie z wirtualnych środowisk nadal będzie potrzebne do budowania projektów i ich zależności.

Pytanie 2. Co uniemożliwia nam przesłanie ghc do Hackage z nazwą pakietu ghc-version o nazwie binarnej, która zależy od jej wersji? na przykład można uzyskać cabal install ghc-version-7.6.2 i uzyskać plik binarny ghc-7.6.2 w ~/.cabal/bin

Odpowiedz

11

Nie musisz robić nic specjalnego. GHC instaluje już wszystkie swoje pliki wykonywalne z wersjonowanymi nazwami i łączami od niesklasyfikowanej nazwy do ostatnio zainstalowanej wersji, np. link od "ghc" do "ghc-7.6.1" lub cokolwiek, co zainstalowałeś jako ostatni. Podczas kompilacji z repozytorium numer wersji jest dość długi i zawiera datę jego zbudowania.

Nie wiem na pewno, dlaczego GHC nie jest w Hackage, ale przypuszczam, że to dlatego, że system kompilacji jest bardzo skomplikowany, a to kabalizowanie (i utrzymywanie kabin) będzie więcej pracy niż jest warte .

+0

Tak. Mam wiele wersji ghc w '~/bin' od lat, bez problemów. –

3

Istnieje kilka soluttions

Powiązane problemy