Próbuję zainstalować Haskell Platform 2014.2.0.0 ze źródła na Red Hat Enterprise Linux 6.5. Mam funkcjonalną instalację Haskell Platform 2012.4.0.0 i GHC 7.4.2 sprzed dwóch lat, a także niedawno zainstalowaną Haskell Platform 2013.2.0.0 i GHC 7.6.3 z JustHub.Jaki jest oficjalny sposób instalacji Haskell Platform 2014, od źródła, na Red Hat?
Zbudowałem GHC 7.8.3 ze źródła, ale wciąż pojawia się siedem błędów w pakiecie testowym. Nie mam pojęcia, czy te niepowodzenia testu są nieszkodliwe, czy nie. (Błędy testowe nie są istotne dla mojego pytania, ale mogą później stać się znaczące).
Rozpakowuję archiwum źródłowe 2014.2.0.0, przeczytaj README. Mówi, że droga do zbudowania tego iteracji Haskell jest ze skryptu powłoki, która jest wywołana
./platform.sh $ PATH_TO_GHC_BINDIST_TARBALL
ja nie mam GHC dystrybucji binarnej archiwum. O ile jestem w stanie powiedzieć, nie ma żadnego archiwum dystrybucyjnego binarnego GHC 7.8.3 dla dowolnej wersji Red Hat Enterprise Linux. Mam zbudowany GHC 7.8.3. Jak mam powiedzieć platform.sh - lub cokolwiek jest pod nim - że nie ma tarballa i powinien on po prostu użyć tego, co jest w $ PATH? Alternatywnie, w jaki sposób mogę spakować istniejącą instalację GHC 7.8.3, aby platform.sh ją zaakceptował?
Zbudowany GHC nie ma polecenia "kabała", więc komendy cab w platform.sh spadają do zmiennej $ PATH, którą mogę skonfigurować jako jedną z pozostałych zainstalowanych wersji (2013.2/7.6.3 lub 2012.4/7.4.2). Wydaje się, że nie robi to różnicy: żaden nie rozpoznaje "cabal -sandbox". Oba skutkują skargami, że powinienem uruchomić "cd hptool; cabal install --only-dependencies ', które wielokrotnie robiłem. platform.sh nigdy nie przechodzi przez ten punkt.
Jeśli uruchamiam polecenia w platform.sh ręcznie, otrzymuję polecenie "cd hptool; cabal build ', którego błędy są poza: "cabal-1.16.0.2: Najpierw uruchom polecenie" configure ".". Ale nie ma polecenia "configure" dostępnego w katalogu hptool.
Utknąłem. Jak zbudować platformę Haskell 2014 na RHEL 6?
Powinieneś spróbować zbudować hptool bez użycia platformy platform.sh (hptool to tylko pakiet cabal - 'cabal configure; cabal build' powinien działać, jeśli masz GHC i działa cabal). hptool wydaje się wymagać dystrybucji binarnej GHC, więc nie wiem, czy to zadziała. Jeśli to nie zadziała, HP to tylko garść pakietów - przejdź do katalogu 'packages' w archiwum HP i' cabal configure; cabal install' te pakiety. Jeśli to nadal nie działa, GHC lub cabal nie działają. – user2407038
To nieco mnie poruszyło. Uruchomiłem sekwencję configure/install/install w każdym podkatalogu w pakietach, ale wiele sekwencji konfiguracji generuje błędy, z których wiele ma związek z brakującymi modułami. Niektóre z brakujących bitów są wewnętrznymi zależnościami do tej konkretnej wersji platformy Haskell 2014 (na przykład wektor-0.10.9.1 z opcją prymitywu-0.5.2.1). Zakładam, że hptool zna kolejność rzeczy i może poradzić sobie z karmieniem jednego pakietu zależnościami, jakich potrzebuje od innego. Czy istnieje sposób na spakowanie mojego zbudowanego GHC 7.8.3 w strukturze ścieżek, z której może korzystać hptool? –
Nigdy nie musiałem budować HP ze źródła, więc nie mogę powiedzieć, jak spakować swój GHC do formatu, który hptool zaakceptuje. prymityw nie jest wewnętrzny dla hptool lub HP, jest to zwykły pakiet cabal, który można uzyskać za pomocą 'cabal install primary '. – user2407038