Triton SmartOS x64 GHC Builds for Cardano Haskell

May 22nd, 2020

Installing and Running a Node on Solaris

Get to GHC build 8.6.5 to get cabal 3.2.0.0


TL;DR
GHC 8.X.X requires GHC 7.10.X, GHC 7.6.3 is available in pkgsrc, bootstrap 7.10.3 with it, then build GHC 8.X.X.


base-64-lts  19.4.0   smartos  zone-dataset  2020-01-07
e75c9d82-3156-11ea-9220-c7a6bb9f41b6
pkgin install build-essential

40 packages installed:

libidn-1.34nb1 p5-Net-SSLeay-1.85nb2 p5-Net-LibIDN-0.12nb11 p5-Mozilla-CA-20180117nb2 p5-Socket6-0.29nb1 p5-Net-IP-1.26nb7 p5-MIME-Base64-3.15nb5 p5-IO-Socket-INET6-2.72nb5 p5-Digest-MD5-2.55nb4 mit-krb5-1.16.2nb3 p5-GSSAPI-0.28nb10 p5-Digest-HMAC-1.03nb9 p5-Net-Domain-TLD-1.75nb3 p5-Net-DNS-1.21 p5-IO-CaptureOutput-1.1105 p5-TimeDate-2.30nb6 p5-IO-Socket-SSL-2.060nb1 gettext-tools-0.20.1 pcre2-10.34 p5-Net-SMTP-SSL-1.04nb3 p5-MailTools-2.20nb2 p5-Error-0.17028 p5-Email-Valid-1.202nb3 p5-Authen-SASL-2.16nb7 expat-2.2.8 libtool-info-2.4.6 libtool-fortran-2.4.6nb1 libtool-base-2.4.6nb2 pkgconf-1.6.0 m4-1.4.18nb2 libtool-2.4.6 gmake-4.2.1nb1 git-docs-2.24.1 git-base-2.24.1 gcc7-7.4.0nb3 bison-3.4.2 binutils-2.26.1nb1 automake-1.16.1nb1 autoconf-2.69nb9 build-essential-1.3

ghc-7.10.3-x86_64-unknown-solaris2.tar.bz2

ghc-8.2.2-x86_64-unknown-solaris2.tar.xz

ghc-8.4.4-x86_64-unknown-solaris2.tar.xz

ghc-8.6.5-x86_64-unknown-solaris2.tar.xz

The command-line interface for Cabal and Hackage.

Sadly Linux is prioritized as is AWS, before you get to Haskell cabal 3.2.0.0 though, we need the following packages and tools on our Linux system to download the source code and build it:

  • developer libraries for the the arbitrary precision library gmp,
  • developer libraries for the compression library zlib,
  • developer libraries for systemd,
  • developer libraries for ncurses,
  • ncurses compatibility libraries

From github.com/input-output-hk/cardano-tutorials/blob/master/node-setup/build.md

Trition SmartOS is not Linux so:

  • Service Management Framework (SMF)

For reference Red Hat Enterprise Linux to Oracle Solaris 11 Comparison


 - monad-memo-0.5.1 (lib) (requires download & build)
 - megaparsec-8.0.0 (lib) (requires download & build)
 - attoparsec-0.13.2.4 (lib) (requires download & build)
 - comonad-5.0.6 (lib:comonad) (requires download & build)
 - monad-control-1.0.2.3 (lib:monad-control) (requires download & build)
 - mono-traversable-1.0.15.1 (lib) (requires download & build)
 - neat-interpolation-0.4 (lib) (requires download & build)
 - aeson-1.4.7.1 (lib) (requires download & build)
 - bifunctors-5.5.7 (lib) (requires download & build)
 - multistate-0.8.0.2 (lib) (requires download & build)
 - conduit-1.3.2 (lib) (requires download & build)
 - semigroupoids-5.3.4 (lib:semigroupoids) (requires download & build)
 - profunctors-5.5.2 (lib) (requires download & build)
 - libyaml-0.1.2 (lib) (requires download & build)
 - strict-list-0.1.5 (lib) (requires download & build)
 - free-5.1.3 (lib) (requires download & build)
 - yaml-0.11.4.0 (lib) (requires download & build)
 - deque-0.4.3 (lib) (requires download & build)
 - ghc-exactprint-0.6.2 (lib) (requires download & build)
 - butcher-1.3.3.1 (lib) (requires download & build)
 - brittany-0.12.1.1 (lib) (requires download & build)
 - brittany-0.12.1.1 (exe:brittany) (requires download & build)


© 2020 Adaizen, LLC — Cardano Pledge & Infrastructure Service — All rights reserved.
Remember, we're not only engineers, but we're also Cardano owners. ♥