Comment installer Haskell Platform pour Ubuntu 13.04?

37

Comment installer Haskell Platform pour Ubuntu 13.04? Je reçois l'erreur suivante lorsque je tape sudo apt-get install haskell-platform :

E: Unable to locate package haskell-platform error 
    
posée wulfreak 27.04.2013 - 19:37
la source

5 réponses

38

Il est rare que le GHC soit trop récent pour Haskell Platform 2012.4.0.0 et trop ancien pour 2013.2.0.0. Cette vallée peut être comblée par de la douleur et du ruban adhésif.

Vous pouvez installer Haskell Platform 2013.2.0.0 depuis le source si GHC est déjà installé. C'est un peu un processus, mais ça marche.

D'abord, installez GHC 7.6.2:

sudo apt-get install ghc

Maintenant, vous avez besoin de GHC 7.6.3 car il s’agit d’une pré-requête pour Haskell Platform 2013.2.0.0.

  

ATTENTION:

     

Vous pourriez penser que l’installation à partir des archives de unknown-linux de   GHC travaillera. Ce ne sera pas le cas. Le GHC dans ces archives est dynamiquement   lié à /usr/lib/libgmp.so.3 qui n'est pas disponible pour Raring   qui a libgmp.so.10 . Ne soyez pas tenté de créer un lien symbolique avec cette bibliothèque   le nom et l'emplacement de sa version antérieure pour truquer l'éditeur de liens. je   est allé là-bas et c'est un chemin à des échecs très confus et est un très   mauvaise pratique alors j'ai réparé mes habitudes et construit GHC à partir de la source.

Ensuite, vous devez obtenir et compiler GHC 7.6.3 à partir de la source (GHC est un compilateur auto-hébergé, il a donc besoin de GHC pour le construire):

wget http://www.haskell.org/ghc/dist/7.6.3/ghc-7.6.3-src.tar.bz2
tar xjvf ghc-7.6.3-src.tar.bz2
cd ghc-7.6.3
./configure
make
sudo make install

La compilation de GHC a pris pas mal de temps (plusieurs heures,>; une demi-vie d'isotope de césium Cs-134m) pour moi, donc c'est probablement un très bon moment pour faire une pause ou dormir. Il passe par trois étapes (0, 1 et 2) de construction du compilateur puis de construction de la prochaine étape du compilateur avec le compilateur qui a été créé.

Pour accélérer le processus de compilation, vous pouvez utiliser

make -j 8

dans l'étape ci-dessus pour tirer parti du processeur multicœur.

Ensuite, récupérez et construisez la plate-forme Haskell depuis la source (j'utiliserai 2013.2.0.0 comme exemple):

wget http://lambda.haskell.org/platform/download/2013.2.0.0/haskell-platform-2013.2.0.0.tar.gz
tar xzvf haskell-platform-2013.2.0.0.tar.gz
cd haskell-platform-2013.2.0.0
./configure
make
sudo make install

Compiler la plate-forme Haskell a pris environ 30 minutes pour moi, alors c'est un autre bon moment pour faire une pause.

Vous devriez maintenant avoir un Haskell Platform 2013.2.0.0 opérationnel avec GHC 7.6.3 correctement lié à libgmp.so.10.

    
réponse donnée Alain O'Dea 04.07.2013 - 23:24
la source
8

Le dépôt Ubuntu 13.04 contient GHC 7.6.2, malheureusement il n’existe pas encore de plate-forme Haskell pour GHC 7.6.x. Vous feriez donc mieux de créer une version antérieure de GHC (par exemple, 7.4.x) et de Haskell Platform à partir de la source pour le moment.

Voir ceci pour plus d'informations: lien

    
réponse donnée su- 29.04.2013 - 06:47
la source
6

Comme l’excellent exemple de détails d’Alain O'Dea , ce problème n’est pas facile à résoudre et Pendant ce temps, il n’ya pas de plate-forme haskell disponible pour Ubuntu 13.04.

Vous pouvez en quelque sorte le "simuler" en installant les paquets sur cette liste: lien

Voici une commande pour le faire pour vous:

sudo apt-get install ghc alex cabal-install happy libghc-cgi-dev libghc-fgl-dev libghc-glut-dev libghc-haskell-src-dev libghc-html-dev libghc-http-dev libghc-hunit-dev libghc-mtl-dev libghc-network-dev libghc-opengl-dev libghc-parallel-dev libghc-parsec3-dev  libghc-quickcheck2-dev libghc-regex-base-dev libghc-regex-compat-dev  libghc-regex-posix-dev libghc-stm-dev libghc-syb-dev  libghc-text-dev  libghc-transformers-dev  libghc-xhtml-dev libghc-zlib-dev

Les deux éléments manquants sont les paquets haskell-platform-doc et haskell-platform-prof, pour des raisons évidentes.

Espérons que les développeurs d'Ubuntu vont bientôt résoudre le problème d'incompatibilité.

Sur cette note:

En outre: Je n'ai malheureusement pas la réputation de laisser cela comme un commentaire sur ce site StackExchange, mais c'est l'endroit le plus approprié.

Il y a un bogue sur Launchpad pour tout cela, mais il n'y a pas beaucoup d'attention. S'il vous plaît visitez ceci et marquez-le comme vous affectant si vous avez atterri sur cette page parce que les paquets Haskell d'Ubuntu 13.04 sont arrachés:

lien

Espérons qu'un mod prendra cette réponse et en fera un commentaire, où il appartient. Désolé - je n'ai pas encore la réputation sur askubuntu!

    
réponse donnée bhilburn 06.08.2013 - 05:47
la source
1

J'ai utilisé ce script .

#!/bin/bash

# Install needed developer libraries
sudo apt-get install libgmp-dev zlib1g-dev libgl1-mesa-dev libglc-dev freeglut3-dev libedit-dev libglw1-mesa-dev libglw1-mesa

# Remove old tmp folder
sudo rm -r tmp
mkdir tmp

# Create symlink if necessary
libgmp=/usr/lib/libgmp.so.3
if [ ! \( -e "$libgmp" \) ]
then
    sudo ln -s /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.5 $libgmp
fi

# Download the ghc
output_ghc_archive="tmp/ghc-7.6.3.tar.bz2"
output_ghc="tmp/ghc-7.6.3"
url=http://www.haskell.org/ghc/dist/7.6.3/ghc-7.6.3-x86_64-unknown-linux.tar.bz2
wget $url -O $output_ghc_archive

# Unpack and remove archive
tar -xjvf $output_ghc_archive -C "tmp/"
rm $output_ghc_archive

# Configure and install
cd $output_ghc
./configure
sudo make install

# Remove ghc installation files
cd ../..
sudo rm -r $output_ghc

# Download the haskell platform
output_hp_archive="tmp/haskell-platform-2013.2.0.0.tar.gz"
output_hp="tmp/haskell-platform-2013.2.0.0"
url2=http://lambda.haskell.org/platform/download/2013.2.0.0/haskell-platform-2013.2.0.0.tar.gz
wget $url2 -O $output_hp_archive


# Unpack and remove archive
tar -xzf $output_hp_archive -C "tmp/"
rm $output_hp_archive


# Configure and install
cd $output_hp
./configure
make
sudo make install

# Remove haskell platform installation files
cd ../..
sudo rm -r $output_hp

# Remove this tmp folder
sudo rm -r tmp

J'espère que ça aide.

    
réponse donnée Alessandro Buggin 01.10.2013 - 14:55
la source
0

sudo apt-get install ghc

GHC signifie Glasgow Haskell Compiler

lien

    
réponse donnée thefourtheye 27.04.2013 - 19:58
la source

Lire d'autres questions sur les étiquettes