Tuesday, September 28, 2010

Haskell Platform + OpenSuse 11.3

Как поставить Haskell Platform 2010.2.0.0 на OpenSuse 11.3? Зачем это делать - другой вопрос; предположим, ответ на него мы уже знаем (:   Народ с hackage.haskell.org все свои сорсовые инсталляторы делает с расчетом на уже присутствующий GHC. Поэтому надо сперва приобрести его. Для начала, воспользуемся репозиториями:

>sudo zypper addrepo -r http://download.opensuse.org/repositories/devel:/languages:/haskell/openSUSE_11.3/devel:languages:haskell.repo
>sudo zypper install ghc
>ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.10.4

Ура! Компилятор есть, можно качать и ставить платформу:

>wget http://hackage.haskell.org/platform/2010.2.0.0/haskell-platform-2010.2.0.0.tar.gz
>tar -xzf haskell-platform-2010.2.0.0.tar.gz
>cd haskell-platform-2010.2.0.0
>./configure
...
checking version of ghc... 6.10.4
configure: error: The Haskell Platform version 2010.2.0.0 requires ghc-6.12.3
It is recommended that you upgrade to ghc-6.12.3 however if you
really want to use this release with an unsupported version of GHC
then use ./configure --enable-unsupported-ghc-version

Фигу! Старовата кобылка. Ладно, поверим на слово, не будем пользоваться чудесной опцией "все равно собирай, пользуй что есть", а вместо этого подновим GHC:

>wget http://darcs.haskell.org/download/dist/6.12.3/ghc-6.12.3-src.tar.bz2
>tar -xjf ghc-6.12.3-src.tar.bz2
>cd ghc-6.12.3
>./configure
>make
>sudo make install
>which ghc
/usr/local/bin/ghc
>/usr/local/bin/ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.12.3

Идем обратно собирать платформу предварительно поставив все, чего недостает. У меня, например, не было freeglut-devel:

>sudo zypper install freeglut-devel
>cd ../haskell-platform-2010.2.0.0
>./configure
**************************************************
* Configuration completed successfully.
*
* Install prefix: /usr/local
* Haskell packages will be registered into
* the global ghc package database
*
* If you wish to change these settings then
* use --prefix= and/or --enable-user-install
*
* Now do "make" followed by "sudo make install"
**************************************************
>make
**************************************************
* Building Haskell Platform completed successfully.
*
* Now do "sudo make install"
**************************************************
>sudo make install

Можно пользоваться (:

>cabal update
Downloading the latest package list from hackage.haskell.org


>ghci
GHCi, version 6.12.3: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package ffi-1.0 ... linking ... done.
Prelude> :quit
Leaving GHCi.

>haddock --version
Haddock version 2.6.1, (c) Simon Marlow 2006
Ported to use the GHC API by David Waern 2006-2008

5 comments:

Anonymous said...

А подумай чего-бы нам написать на Хаскелле и создай репозитарий на гитхабе. Горбунова Макса припашем тоже писать

Unknown said...

Прошу прощения, опять забыл настроить чтобы комментарии приходили на почту. Мне на ум одни только игрушки приходят. Но не писать же Каркассон для Андроида на Хаскеле? o_0

Anonymous said...

Кто что собирается дарить на 8-е марта девушке?

Unknown said...

Ну как же! 8-е Марта! Конечно, я поставлю ей последнюю хаскель-платформу на ее линукс! :D

Unknown said...

Чума! Этот мануал всё-таки оказался кому-то полезен. Мне. Оказался в первой тройке результатов по запросу "opensuse haskell". Пожалуй даже подновлю его для 11.4 и платформы этого года.