You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 10, 2020. It is now read-only.
It would probably be best to clean out some of the utilities that were left over from the post-HaLVM platform changes when upgrading to GHC 8.x. This way HaLVM will more closely resemble a regular GHC.
On a stock GHC, the following is installed to /lib/*/bin and /bin:
/bin
builder@6816a77f17db:/ubuntu16.04$ ls -l /nix/store/dz4vpj27nza9jv96b1jdpxjghscwzgps-ghc-8.0.2/bin/
total 76
lrwxrwxrwx 1 builder builder 9 Jan 1 1970 ghc -> ghc-8.0.2
-r-xr-xr-x 1 builder builder 594 Jan 1 1970 ghc-8.0.2
lrwxrwxrwx 1 builder builder 13 Jan 1 1970 ghc-pkg -> ghc-pkg-8.0.2
-r-xr-xr-x 1 builder builder 626 Jan 1 1970 ghc-pkg-8.0.2
lrwxrwxrwx 1 builder builder 10 Jan 1 1970 ghci -> ghci-8.0.2
-r-xr-xr-x 1 builder builder 307 Jan 1 1970 ghci-8.0.2
lrwxrwxrwx 1 builder builder 17 Jan 1 1970 haddock -> haddock-ghc-8.0.2
-r-xr-xr-x 1 builder builder 585 Jan 1 1970 haddock-ghc-8.0.2
-r-xr-xr-x 1 builder builder 48120 Jan 1 1970 hp2ps
-r-xr-xr-x 1 builder builder 556 Jan 1 1970 hpc
-r-xr-xr-x 1 builder builder 1335 Jan 1 1970 hsc2hs
lrwxrwxrwx 1 builder builder 12 Jan 1 1970 runghc -> runghc-8.0.2
-r-xr-xr-x 1 builder builder 602 Jan 1 1970 runghc-8.0.2
lrwxrwxrwx 1 builder builder 6 Jan 1 1970 runhaskell -> runghc
/lib/*/bin
builder@6816a77f17db:/ubuntu16.04$ ls -l /nix/store/dz4vpj27nza9jv96b1jdpxjghscwzgps-ghc-8.0.2/lib/ghc-8.0.2/bin
total 20856
-r-xr-xr-x 1 builder builder 2341496 Jan 1 1970 ghc
-r-xr-xr-x 1 builder builder 4498112 Jan 1 1970 ghc-iserv
-r-xr-xr-x 1 builder builder 73872 Jan 1 1970 ghc-iserv-dyn
-r-xr-xr-x 1 builder builder 7795904 Jan 1 1970 ghc-iserv-prof
-r-xr-xr-x 1 builder builder 537856 Jan 1 1970 ghc-pkg
-r-xr-xr-x 1 builder builder 13570 Jan 1 1970 ghc-split
-r-xr-xr-x 1 builder builder 4643920 Jan 1 1970 haddock
-r-xr-xr-x 1 builder builder 743400 Jan 1 1970 hpc
-r-xr-xr-x 1 builder builder 611208 Jan 1 1970 hsc2hs
-r-xr-xr-x 1 builder builder 54816 Jan 1 1970 runghc
-r-xr-xr-x 1 builder builder 13736 Jan 1 1970 unlit
On HaLVM-2.4.0, /bin and /lib/*/bin contain:
/bin
[nix-shell:/ubuntu16.04]$ ls -l /nix/store/wc5har9fpf9milka49z10gdh4v99cjr8-HaLVM-2.4.0/bin/
total 96
-r-xr-xr-x 1 builder builder 8408 Jan 1 1970 convert-profile
-r-xr-xr-x 1 builder builder 1083 Jan 1 1970 halvm-cabal
-r-xr-xr-x 1 builder builder 647 Jan 1 1970 halvm-config
-r-xr-xr-x 1 builder builder 685 Jan 1 1970 halvm-ghc
-r-xr-xr-x 1 builder builder 638 Jan 1 1970 halvm-ghc-pkg
-r-xr-xr-x 1 builder builder 8584 Jan 1 1970 mkrenddir
lrwxrwxrwx 1 builder builder 30 Jan 1 1970 x86_64-unknown-HaLVM-ghc -> x86_64-unknown-HaLVM-ghc-8.0.2
-r-xr-xr-x 1 builder builder 504 Jan 1 1970 x86_64-unknown-HaLVM-ghc-8.0.2
lrwxrwxrwx 1 builder builder 34 Jan 1 1970 x86_64-unknown-HaLVM-ghc-pkg -> x86_64-unknown-HaLVM-ghc-pkg-8.0.2
-r-xr-xr-x 1 builder builder 536 Jan 1 1970 x86_64-unknown-HaLVM-ghc-pkg-8.0.2
-r-xr-xr-x 1 builder builder 48648 Jan 1 1970 x86_64-unknown-HaLVM-hp2ps
/lib/*/bin
[nix-shell:/ubuntu16.04]$ ls -l /nix/store/wc5har9fpf9milka49z10gdh4v99cjr8-HaLVM-2.4.0/lib/*/bin
total 89620
-r-xr-xr-x 1 builder builder 375336 Jan 1 1970 HsColour
-r-xr-xr-x 1 builder builder 570992 Jan 1 1970 alex
-r-xr-xr-x 1 builder builder 5637680 Jan 1 1970 cabal
-r-xr-xr-x 1 builder builder 72975304 Jan 1 1970 ghc
-r-xr-xr-x 1 builder builder 6072240 Jan 1 1970 ghc-pkg
-r-xr-xr-x 1 builder builder 13570 Jan 1 1970 ghc-split
-r-xr-xr-x 1 builder builder 4639560 Jan 1 1970 haddock.bin
-r-xr-xr-x 1 builder builder 838648 Jan 1 1970 happy
-r-xr-xr-x 1 builder builder 316 Jan 1 1970 hsc2hs
-r-xr-xr-x 1 builder builder 610224 Jan 1 1970 hsc2hs.bin
-r-xr-xr-x 1 builder builder 13472 Jan 1 1970 unlit
I'd say we should make the following changes to HaLVM-2.4.x:
remove /lib/*/bin/alex
remove /lib/*/bin/happy
remove /lib/*/bin/HsColour
remove /lib/*/bin/haddock.bin
remove /lib/*/bin/hsc2hs.bin
add /bin/hpc (statically linked)
add (statically linked) /lib/*/bin/haddock, /lib/*/bin/happy, /lib/*/bin/hsc2hs, then write a script to call each one of these from /bin, or just make a symlink at/bin/h* that points to /lib/*/bin/h*
There are sometimes problems with statically linking glibc, maybe a musl based GHC could be used to statically link some of the h* utilities. Static linking could give us greater portability.
The text was updated successfully, but these errors were encountered:
It would probably be best to clean out some of the utilities that were left over from the post-
HaLVM
platform changes when upgrading to GHC8.x
. This wayHaLVM
will more closely resemble a regularGHC
.On a stock
GHC
, the following is installed to/lib/*/bin
and/bin
:/bin
/lib/*/bin
On
HaLVM-2.4.0
,/bin
and/lib/*/bin
contain:/bin
/lib/*/bin
I'd say we should make the following changes to
HaLVM-2.4.x
:/lib/*/bin/alex
/lib/*/bin/happy
/lib/*/bin/HsColour
/lib/*/bin/haddock.bin
/lib/*/bin/hsc2hs.bin
/bin/hpc
(statically linked)/lib/*/bin/haddock
,/lib/*/bin/happy
,/lib/*/bin/hsc2hs
, then write a script to call each one of these from/bin
, or just make a symlink at/bin/h*
that points to/lib/*/bin/h*
There are sometimes problems with statically linking
glibc
, maybe amusl
basedGHC
could be used to statically link some of theh*
utilities. Static linking could give us greater portability.The text was updated successfully, but these errors were encountered: