trying to install Haskell patform using
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
This kind of error is displayed:
Welcome to Haskell!
This script will download and install the following binaries: * ghcup - The Haskell toolchain installer (for managing GHC/cabal versions) * ghc - The Glasgow Haskell Compiler * cabal - The Cabal build tool
ghcup installs only into the following directory, which can be removed anytime: /home/welcome/.ghcup
Press ENTER to proceed or ctrl-c to abort. Note that this script can be re-run at any given time.
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 20.2M 100 20.2M 0 0 2302k 0 0:00:08 0:00:08 --:--:-- 2899k [ Info ] Upgrading GHCup... [ Warn ] No GHCup update available
System requirements Note: You need the following packages: curl g++ gcc gmp make ncurses realpath xz-utils. Consult your distro documentation on the exact names of those packages.
Press ENTER to proceed or ctrl-c to abort. Installation may take a while.
[ Info ] verifying digest of: ghc-8.10.4-x86_64-fedora27-linux.tar.xz [ Info ] Unpacking: ghc-8.10.4-x86_64-fedora27-linux.tar.xz to /tmp/ghcup-liKjHm
[ Info ] Installing GHC (this may take a while) [ ghc-configure ] ./configure: line 44: printf: write error: No space left on device [ ghc-configure ] ./configure: line 45: echo: write error: No space left on device [ ghc-configure ] sort: fflush failed: 'standard output': No space left on device [ ghc-configure ] sort: write error [ ghc-configure ] ./configure: line 54: echo: write error: No space left on device [ ghc-configure ] ./configure: line 82: printf: write error: No space left on device [ Error ] BuildFailed failed in dir "/tmp/ghcup-liKjHm": NonZeroExit 77 "./configure" ["--prefix=/home/welcome/.ghcup/ghc/8.10.4"] Check the logs at "/home/welcome/.ghcup/logs" and the build directory "/tmp/ghcup-liKjHm" for more clues. Make sure to clean up "/tmpI/ghcup-liKjHm" afterwards. "_eghcup --cache install ghc recommended" failed!
Inside ghcup.log:
Debug: Identified Platform as: PlatformResult {_platform = Linux UnknownLinux, _distroVersion = Just (General (Version {_vEpoch = Nothing, _vChunks = (Digits 4 :| []) :| [Digits 2 :| []], _vMeta = [], _vRel = []}))}
Debug: Requested to install GHC with Version {_vEpoch = Nothing, _vChunks = (Digits 8 :| []) :| [Digits 10 :| [],Digits 4 :| []], _vMeta = [], _vRel = []}
Info: verifying digest of: ghc-8.10.4-x86_64-fedora27-linux.tar.xz
Info: Unpacking: ghc-8.10.4-x86_64-fedora27-linux.tar.xz to /tmp/ghcup-liKjHm
Info: Installing GHC (this may take a while)
Error: BuildFailed failed in dir "/tmp/ghcup-liKjHm": NonZeroExit 77 "./configure" ["--prefix=/home/welcome/.ghcup/ghc/8.10.4"]
Check the logs at "/home/welcome/.ghcup/logs" and the build directory "/tmp/ghcup-liKjHm" for more clues.
Make sure to clean up "/tmp/ghcup-liKjHm" afterwards.
Inside ghc-configure.log file:
cat: write error: No space left on device
cat: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
./configure: line 1970: printf: write error: No space left on device
cat: write error: No space left on device
./configure: line 2134: printf: write error: No space left on device
cat: write error: No space left on device
cat: write error: No space left on device
cat: write error: No space left on device
cat: write error: No space left on device
cat: write error: No space left on device
cat: write error: No space left on device
./configure: line 2375: printf: write error: No space left on device
checking build system type... ./config.guess: line 112: echo: write error: No space left on device
cat: write error: No space left on device
./configure: line 2389: printf: write error: No space left on device
x86_64-pc-linux-gnu
./configure: line 2409: printf: write error: No space left on device
checking host system type... ./configure: line 2422: printf: write error: No space left on device
x86_64-pc-linux-gnu
./configure: line 2442: printf: write error: No space left on device
checking target system type... ./configure: line 2455: printf: write error: No space left on device
x86_64-pc-linux-gnu
Build platform inferred as: x86_64-unknown-linux
Host platform inferred as: x86_64-unknown-linux
Target platform inferred as: x86_64-unknown-linux
GHC build : x86_64-unknown-linux
GHC host : x86_64-unknown-linux
GHC target : x86_64-unknown-linux
LLVM target: x86_64-unknown-linux
./configure: line 3356: printf: write error: No space left on device
checking for path to top of build tree... ./configure: line 3382: printf: write error: No space left on device
/tmp/ghcup-liKjHm/ghc-8.10.4
./configure: line 3416: printf: write error: No space left on device
checking for a BSD-compatible install... ./configure: line 3450: echo: write error: No space left on device
./configure: line 3451: echo: write error: No space left on device
./configure: line 3484: printf: write error: No space left on device
./install-sh -c
./configure: line 3502: printf: write error: No space left on device
checking for gfind... ./configure: line 3535: printf: write error: No space left on device
no
./configure: line 3502: printf: write error: No space left on device
checking for find... ./configure: line 3520: printf: write error: No space left on device
./configure: line 3532: printf: write error: No space left on device
/usr/bin/find
./configure: line 3544: echo: write error: No space left on device
./configure: line 3551: printf: write error: No space left on device
configure: WARNING: /usr/bin/find looks like a non-*nix find, ignoring it
./configure: line 3555: printf: write error: No space left on device
checking for find... ./configure: line 3602: printf: write error: No space left on device
no
./configure: line 3614: printf: write error: No space left on device
checking whether ln -s works... ./configure: line 3621: printf: write error: No space left on device
no, using cp -pR
./configure: line 3630: printf: write error: No space left on device
checking for gsed... ./configure: line 3661: printf: write error: No space left on device
sed
./configure: line 3673: printf: write error: No space left on device
checking for python3... ./configure: line 3691: printf: write error: No space left on device
./configure: line 3703: printf: write error: No space left on device
/usr/bin/python3
./configure: line 3795: printf: write error: No space left on device
checking for gcc... ./configure: line 3811: printf: write error: No space left on device
./configure: line 3822: printf: write error: No space left on device
gcc
./configure: line 3853: printf: write error: No space left on device
./configure: line 3863: printf: write error: No space left on device
./configure: line 3873: printf: write error: No space left on device
./configure: line 3863: printf: write error: No space left on device
./configure: line 3873: printf: write error: No space left on device
./configure: line 3863: printf: write error: No space left on device
./configure: line 3873: printf: write error: No space left on device
./configure: line 3863: printf: write error: No space left on device
./configure: line 3873: printf: write error: No space left on device
cat: write error: No space left on device
./configure: line 3893: printf: write error: No space left on device
checking whether the C compiler works... ./configure: line 3916: printf: write error: No space left on device
./configure: line 3919: printf: write error: No space left on device
./configure: line 3957: printf: write error: No space left on device
no
./configure: line 3959: printf: write error: No space left on device
./configure: line 3962: printf: write error: No space left on device
configure: error: in `/tmp/ghcup-liKjHm/ghc-8.10.4':
./configure: line 416: printf: write error: No space left on device
configure: error: C compiler cannot create executables
See `config.log' for more details
./configure: line 4: echo: write error: No space left on device
./configure: line 8: printf: write error: No space left on device
./configure: line 9: echo: write error: No space left on device
sort: fflush failed: 'standard output': No space left on device
sort: write error
./configure: line 40: echo: write error: No space left on device
./configure: line 44: printf: write error: No space left on device
./configure: line 45: echo: write error: No space left on device
sort: fflush failed: 'standard output': No space left on device
sort: write error
./configure: line 54: echo: write error: No space left on device
./configure: line 82: printf: write error: No space left on device
System specs:
Operating system : Solus
RAM : 4GB
Storage : 139.2/160GB free
This is because of /tmp directory uses RAM
Changing the temporary directory somewhere in home solves that problem
Execute this command on terminal before installing. This directory can be deleted after installing but make sure to close the terminal too then
I got this answer in #haskell IRC channel.