valderman / haste-compiler

A GHC-based Haskell to JavaScript compiler
http://haste-lang.org
BSD 3-Clause "New" or "Revised" License
1.45k stars 109 forks source link

haste-boot fails on 32-bit linux (Exec format error) #345

Closed lesguillemets closed 8 years ago

lesguillemets commented 8 years ago

Hi,

I've been very happily using haste on my linux (64-bit), and I recently tried to install it on another 32-bit machine. Haste-boot fails (details later) with Exec format error from haste-cabal.bin and I believe this is because haste-boot tries to execute haste-cabal downloaded from github, which is built for 64-bit architecture.

Here is the detail:

Error messages:

$ cd /path/to/haste-compiler/cloned
$ cabal install # succeeds
$ haste-boot --force --local
Downloading haste-cabal from GitHub
Sending:
GET /haste-libs/haste-cabal.linux.tar.bz2 HTTP/1.1
Host: valderman.github.io

Creating new connection to valderman.github.io
Received:
(...)
Vary: Accept-Encoding

Reading package info from "libraries/rts.pkg" ... done.
~/.cabal/bin/haste-cabal: line 4: ~/.haste/i386-linux-haste-0.5.3-ghc-7.10.2/haste-cabal/haste-cabal.bin: cannot execute binary file: Exec format error
~/.cabal/bin/haste-cabal: line 4: ~/.haste/i386-linux-haste-0.5.3-ghc-7.10.2/haste-cabal/haste-cabal.bin: Success
Command '~/.cabal/bin/haste-cabal' failed with error  code 126

(I truncated /home/lesguillemets to ~ here.)

My environment:

I'm presuming that this can be avoided if I build haste-cabal myself (as described in the README). I haven't tried it yet, but if need be, I'm totally fine to do so (in which case, however, some notes in the readme would perhaps be nice).

By the way, Thank you very much for Haste. It's amazing.

valderman commented 8 years ago

Haste is not officially supported on 32 bit platforms anymore, I'm afraid. Supporting two different GHC versions on three major platforms at once takes enough time and work that I can't really justify doubling that work just to support legacy platforms.

Of course, if someone were to volunteer as maintainer for the 32 bit support (or for the OSX/Windows ports - anything that shares the maintenance burden) I'd be glad to support 32 bit platforms again.

lesguillemets commented 8 years ago

I get it, and I totally agree that it's a reasonable decision. Thanks for your time and quick response.