Installing GHC using GHCUP not enough space

hello. good evening, i am a haskell beginner. so i am trying to install ghc 8.10.x specifically 8.10.3 using ghcup on an Arch Linux distribution:

System:    Kernel: 5.4.97-1-lts x86_64 bits: 64 compiler: gcc v: 10.2.1 Desktop: i3 4.19.1 info: polybar dm: LightDM 1.30.0 
           Distro: Arch Linux 
Machine:   Type: Laptop System: ASUSTeK product: X450MD v: 1.0 serial: <filter> 
           Mobo: ASUSTeK model: X450MD v: 1.0 serial: <filter> UEFI: American Megatrends v: X450MD.203 date: 07/09/2014 
CPU:       Info: Quad Core model: Intel Pentium N3530 bits: 64 type: MCP arch: Silvermont rev: 8 L2 cache: 1024 KiB 
           flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 17333 
           Speed: 502 MHz min/max: 500/2582 MHz Core speeds (MHz): 1: 500 2: 500 3: 527 4: 503 
Graphics:  Device-1: Intel Atom Processor Z36xxx/Z37xxx Series Graphics & Display vendor: ASUSTeK driver: i915 v: kernel 
           bus ID: 00:02.0 chip ID: 8086:0f31 class ID: 0300 
           Device-2: NVIDIA GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] vendor: ASUSTeK driver: nvidia 
           v: 390.141 bus ID: 01:00.0 chip ID: 10de:1140 class ID: 0302 
           Display: x11 server: X.Org 1.20.10 compositor: picom v: git-dac85 driver: loaded: modesetting,nvidia 
           resolution: 1366x768~60Hz s-dpi: 75 
           OpenGL: renderer: GeForce 820M/PCIe/SSE2 v: 4.6.0 NVIDIA 390.141 direct render: Yes 
Audio:     Device-1: Intel Atom Processor Z36xxx/Z37xxx Series High Definition Audio vendor: ASUSTeK driver: snd_hda_intel 
           v: kernel bus ID: 00:1b.0 chip ID: 8086:0f04 class ID: 0403 
           Sound Server: ALSA v: k5.4.97-1-lts 
Network:   Device-1: Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter vendor: AzureWave driver: ath9k v: kernel 
           port: e000 bus ID: 02:00.0 chip ID: 168c:0036 class ID: 0280 
           IF: wlan0 state: down mac: <filter> 
           Device-2: Realtek RTL810xE PCI Express Fast Ethernet vendor: ASUSTeK driver: r8169 v: kernel port: d000 
           bus ID: 03:00.2 chip ID: 10ec:8136 class ID: 0200 
           IF: enp3s0f2 state: up speed: 100 Mbps duplex: full mac: <filter> 
           IF-ID-1: br-294d368b4e93 state: down mac: <filter> 
           IF-ID-2: docker0 state: down mac: <filter> 
           IF-ID-3: pan1 state: down mac: <filter> 
Bluetooth: Device-1: type: USB driver: btusb v: 0.8 bus ID: 1-3:9 chip ID: 13d3:3408 class ID: e001 
           Report: ID: hci0 state: up running pscan bt-v: 2.1 lmp-v: 4.1 sub-v: 1 hci-v: 4.1 rev: 3101 address: <filter> 
Drives:    Local Storage: total: 476.94 GiB used: 55.91 GiB (11.7%) 
           ID-1: /dev/sda vendor: Hikvision model: HS-SSD-E100 512G size: 476.94 GiB speed: 3.0 Gb/s rotation: SSD 
           serial: <filter> rev: 2A0 scheme: GPT 
Partition: ID-1: / size: 459.65 GiB used: 55.67 GiB (12.1%) fs: ext4 dev: /dev/sda2 
           ID-2: /boot size: 511 MiB used: 168.2 MiB (32.9%) fs: vfat dev: /dev/sda1 
Swap:      ID-1: swap-1 type: partition size: 8.44 GiB used: 72.2 MiB (0.8%) priority: -2 dev: /dev/sda3 
Sensors:   System Temperatures: cpu: 6280.0 C mobo: N/A 
           Fan Speeds (RPM): cpu: 3200 
Info:      Processes: 166 Uptime: 6h 52m wakeups: 1 Memory: 3.73 GiB used: 1.97 GiB (52.8%) Init: systemd v: 247 Compilers: 
           gcc: 10.2.0 clang: 11.0.1 Packages: pacman: 1573 Shell: fish v: 3.1.2 running in: kitty inxi: 3.3.01 

however every time it tries to install it will abort and fail and i will receive the message:
ghcup.log

Debug:  Identified Platform as: PlatformResult {_platform = Linux UnknownLinux, _distroVersion = Nothing}
Debug:  Unable to get/parse Last-Modified header
Debug:  downloading: https://www.haskell.org/ghcup/data/ghcup-0.0.4.yaml
Debug:  Requested to install GHC with Version {_vEpoch = Nothing, _vChunks = (Digits 8 :| []) :| [Digits 10 :| [],Digits 3 :| []], _vMeta = [], _vRel = []}
Info: downloading: https://downloads.haskell.org/~ghc/8.10.3/ghc-8.10.3-x86_64-fedora27-linux.tar.xz
Info: verifying digest of: ghc-8.10.3-x86_64-fedora27-linux.tar.xz
Info: Unpacking: ghc-8.10.3-x86_64-fedora27-linux.tar.xz to /tmp/ghcup-MJgbnc
Info: Installing GHC (this may take a while)
Error: Build failed with NonZeroExit 1 "./configure" ["--prefix=/home/tricks/.ghcup/ghc/8.10.3"]
    Check the logs at "/home/tricks/.ghcup/logs" and the build directory "/tmp/ghcup-MJgbnc" for more clues.
    Make sure to clean up "/tmp/ghcup-MJgbnc" afterwards.

and
ghc-configure.log

ghcup: ./configure: executeFile: resource exhausted (No space left on device)

i think my /tmp/ directory does not have enough space to let me install ghc but the problem is idk how to make it large enough or modify it so i can install ghc. How should i go with this?

EDIT: As I also asked this on a Discord Server and from google search, i just need to modify the TMPDIR temporarily. I will give update tomorrow because i need sleep. goodnight.

I didnt sleep and I just did TMPDIR=$HOME/tmp after creating the new directory in home. it installed fine :smile:

1 Like

I’m having the same problem. I’m very much a rookie and probably over my head. Can you explain how you made this work with specifics? I’m not sure how I make the temp file bigger or where it is for sure.

I guess the idea is that you do

mkdir $HOME/tmp
TMPDIR=$HOME/tmp ghcup
1 Like