Haskell Platform for Ubuntu 13.04 nasıl kurulur?


37

Haskell Platform for Ubuntu 13.04 nasıl kurulur? Yazarken aşağıdaki hatayı alıyorum sudo apt-get install haskell-platform:

E: Unable to locate package haskell-platform error 

ayrıca askubuntu.com/questions/288201/… adresinde yararlı bulabilirsiniz
hdgarrood

2
@HokieTux tarafından "Bunların hepsi için Launchpad'de bir hata var, ancak fazla dikkat çekmiyor. Lütfen Ubuntu 13.04'ün Haskell paketleri saklandığı için bu sayfayı ziyaret ettiniz ve bu sayfaya girdiyseniz sizi etkilediğini işaretleyin:" Bağlantı şudur: bugs.launchpad.net/ubuntu/+source/haskell-platform/+bug/1047678
Rafael S. Calsaverini

Bu, 13.10'da düzeltilmiştir, bu nedenle yükseltme, yükseltme yapabilenler için bir çözümdür.
Squidly

FUBAR 13.04’ü yükseltme (önceki yükseltme denemelerimin çoğu başarısız oldu).
karatedog

Bu, 13.10'da sabit değildir. apt-get install ghcÇok sayıda Ubuntu kütüphanesi tarafından yüklenen ve kullanılan 4.8C olan GHC 4.8.1'e bağlı kalmayacaksınız . NixOS'a göç etmek için mükemmel bir zaman.
polkovnikov.ph

Yanıtlar:


38

Haskell Platform 2012.4.0.0 için çok yeni olan ve 2013.2.0.0 için çok eski olan bir GHC'ye sahip olmak arasında bir vadide avlanma yaşanıyor. Bu vadi biraz acı ve koli bandı ile köprülenebilir.

Eğer önceden GHC kuruluysa Haskell Platform 2013.2.0.0'ı kaynaktan yükleyebilirsiniz. Bu bir süreç biraz, ama işe yarıyor.

İlk önce, GHC 7.6.2'yi kurun:

sudo apt-get install ghc

Şimdi Haskell Platform 2013.2.0.0 için bir ön koşul olduğu için GHC 7.6.3'e ihtiyacınız var.

UYARMAK, İHTAR ETMEK, DİKKAT ÇEKMEK:

GHC'nin bilinmeyen linux arşivlerinden kurulumun çalışacağını düşünebilirsiniz. Olmayacak. Bu arşivlerde GHC dinamik karşı bağlantılıdır /usr/lib/libgmp.so.3 sahiptir can atıyor kullanılamıyor libgmp.so.10 . Bağlayıcıyı sahte yapmak için bu kitaplığı önceki sürümün adı ve konumuna bağlamaya ÇALIŞMAYIN. Oraya gittim ve bu kafa karıştırıcı başarısızlıkların bir yolu ve çok kötü bir uygulama, bu yüzden yolumu değiştirdim ve sera gazı kaynağından inşa ettim.

Daha sonra, GHC 7.6.3 kaynağından almanız ve oluşturmanız gerekir (GHC kendi kendini barındıran bir derleyicidir, bu nedenle oluşturmak için GHC'ye ihtiyacı vardır):

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

GHC'nin derlenmesi benim için oldukça uzun sürdü (birkaç saat,> Sezyum izotop Cs-134m'nin yarı ömrü) bu yüzden bu bir mola veya uyku için çok iyi bir zaman olabilir. Derleyicinin oluşturulmasının ve ardından derleyicinin inşa edilen derleyicinin bir sonraki aşamasının oluşturulmasında üç aşamadan (0, 1 ve 2) geçer.

Derleme işlemini hızlandırmak için kullanabilirsiniz.

make -j 8

Çok çekirdekli işlemciden yararlanmak için yukarıdaki adımda

Ardından Haskell Platformunu kaynaktan edinin ve oluşturun (örnek olarak 2013.2.0.0 kullanacağım):

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

Haskell Platformunun derlenmesi benim için 30 dakikadan fazla sürdü, bu da bir mola için başka bir iyi zaman.

Şimdi, libgmp.so.10 ile doğru bir şekilde bağlantılı GHC 7.6.3 ile çalışan bir Haskell Platform 2013.2.0.0'a sahip olmalısınız.


4
Yeni bir kurulumda ubuntu 13.04 tarihinde libncurses5-dev, kurulumun çalışması için paketi yüklemem gerekiyordu. =)
Felipe Almeida

1
Ayrıca ihtiyacım vardı:sudo apt-get install libgl1-mesa-dev libglc-dev freeglut3-dev libedit-dev libglw1-mesa libglw1-mesa-dev
Rafael S. Calsaverini 16:13

kartı yüklendikten sonra bu 2 klasörü nasıl silebilirim?
Alan Coromano,

Evet, kurulumdan sonra klasörleri silebilirsiniz. Yorumlarınız ve millet düzenlediğiniz için teşekkür ederiz. İyi şeyler.
Alain O'Dea

3
Sadece insanları korkutmamak için: ghc-7.6.3beş yaşındaki masaüstüme inşa etmek yaklaşık 2,5 saat ve modern i7 masaüstünde - yaklaşık 20 dakika sürdü. Haskell platformu neredeyse anında inşa ediyor. Tüm sonuçlar ile make -j8.
Michael Pankov

8

Ubuntu 13.04 deposu GHC 7.6.2 içeriyor, ne yazık ki henüz GHC 7.6.x için Haskell Platform yok. Şimdilik GHC'nin (yani, 7.4.x) ve Haskell Platformunun bir versiyonunu oluşturmak daha iyi olurdu.

Daha fazla bilgi için buna bakın: https://launchpad.net/ubuntu/raring/i386/haskell-platform


5
Biri, neden henüz GHC 7.6'yı içeren bir Platform sürümü olmadığını bilerek, GHC 7.6'yı göndermeyi ve Haskell gelişimini birçok insan için kırmayı seçtiklerini merak ediyor.
Matthew Walton


6

Alain O'Dea'nın detayların üzerindeki mükemmel cevabı olduğundan , bu problem kolay bir şekilde çözülememiştir ve bu arada Ubuntu 13.04 için uygun bir platform bulunmamaktadır.

Bu listedeki paketleri kurarak 'sahte' sıralama yapabilirsiniz: http://packages.ubuntu.com/precise/haskell-platform

İşte bunu sizin için yapabileceğiniz bir komut:

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

Bundan eksik olan iki öğe, açık nedenlerle haskell-platform-doc ve haskell-platform-prof paketleridir.

Umarım, Ubuntu geliştiricileri uyumsuzluk sorununu yakında çözebilir.

Bu notta:

Ek olarak: Maalesef bunu StackExchange sitesinde yorum olarak bırakacak itibarımız yok, ancak bu en uygun yer.

Bunların hepsi için Launchpad'de bir hata var, ancak fazla dikkat çekmiyor. Lütfen bunu ziyaret edin ve Ubuntu 13.04 Haskell paketleri saklandığı için bu sayfaya girdiyseniz sizi etkiliyor olarak işaretleyin:

https://bugs.launchpad.net/ubuntu/+source/haskell-platform/+bug/1047678

Umarım bir mod bu cevabı alır ve ait olduğu bir yoruma dönüştürür. Üzgünüm - askubuntu'da henüz ünüm yok!


1
Launchpad bug tracker'ı bu başlıkta top bir yorum olarak koyacağım. Bu sayfayı okuyanların oraya gidip çözülmesi için baskı yapması önemli.
Rafael S. Calsaverini

1

Bu betiği kullandım .

#!/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

Umarım yardımcı olur.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.