Re: compiling hugs
Anthony Clayden <[email protected]> Wed, 29 Apr 2020 18:21:42 +1200
| Newsgroups | gmane.comp.lang.haskell.hugs.user |
|---|---|
| Message-ID | <CAM7nRYRLSmK1pdQv3-Yf9eAUsP+dJGanG+QPBqXa+WUnLonP0A@mail.gmail.com> |
--===============7194309464465846423== Content-Type: multipart/alternative; boundary="000000000000d774d105a467f6cb" --000000000000d774d105a467f6cb Content-Type: text/plain; charset="UTF-8" The news is improving, I have a working system (on Windows, including WinHugs). Not all of the libraries compiled, and some are bitrotted beyond repair. But I think there's enough for your objective of using Hugs to bootstrap GHC. In particular, you'll need to get working a couple of preprocessors: * hsc2hs -- HSC format is a hybrid Haskell/C; pre-processed to .hs + .c + .h * cpphs -- "a simplified re-implementation" of C++ pre-processor, in Haskell. They're both used extensively in the `make` building libraries/packages. Both of those need a bit of polishing-up, see Franklin's repo. (He was also working on Mac, did you see his homebrew kit?) For the sake of posterity I'll post some notes here with the travails of getting Hugs up and running. Some of the code is very ancient -- pre the C 1999 standard. AntC > Hi Sam, I have some good news, but mostly bad news. > >* Please do let me know if anybody can figure out how to compile the *>* missing library! * >To answer your last point first, Franklin Chen figured out how to compile the library -- it's a two-line fix, that gets three .dlls to compile. See around line 220 in here: https://github.com/FranklinChen/hugs98-plus-Sep2006/blob/master/packages/base/include/HsBase.h ; also see the git change history for that header file. --000000000000d774d105a467f6cb Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto">The news is improving, I have a working system (on Window= s, including WinHugs).</div><div dir=3D"auto"><br></div><div dir=3D"auto">N= ot all of the libraries compiled, and some are bitrotted beyond repair.</di= v><div dir=3D"auto"><br></div><div dir=3D"auto">But I think there's eno= ugh for your objective of using Hugs to bootstrap GHC.</div><div dir=3D"aut= o"><br></div><div dir=3D"auto">In particular, you'll need to get workin= g a couple of preprocessors:</div><div dir=3D"auto"><br></div><div dir=3D"a= uto">* hsc2hs -- HSC format is a hybrid Haskell/C; pre-processed to .hs + .= c + .h</div><div dir=3D"auto">* cpphs -- "a simplified re-implementati= on" of C++ pre-processor, in Haskell.</div><div dir=3D"auto"><br></div= ><div dir=3D"auto">They're both used extensively in the `make` building= libraries/packages.</div><div dir=3D"auto"><br></div><div dir=3D"auto">Bot= h of those need a bit of polishing-up, see Franklin's repo. (He was als= o working on Mac, did you see his homebrew kit?)</div><div dir=3D"auto"><br= ></div><div dir=3D"auto">For the sake of posterity I'll post some notes= here with the travails of getting Hugs up and running.</div><div dir=3D"au= to">Some of the code is very ancient -- pre the C 1999 standard.</div><div = dir=3D"auto"><br></div><div dir=3D"auto">AntC</div><div dir=3D"auto"><br></= div><div dir=3D"auto">>=C2=A0<span style=3D"white-space:pre-wrap;backgro= und-color:rgb(255,255,255)">Hi Sam, I have some good news, but mostly bad n= ews.</span></div><pre style=3D"white-space:pre-wrap;background-color:rgb(25= 5,255,255)"><div dir=3D"auto">></div>><i> Please do let me know if an= ybody can figure out how to compile the </i>><i> missing library! </i><div dir=3D"auto"> >To answer your last point first, Franklin Chen figured out how to compi= le the library -- it's a two-line fix, that gets three .dlls to compile. See around line 220 in here:=20 </div><a href=3D"https://github.com/FranklinChen/hugs98-plus-Sep2006/blob/m= aster/packages/base/include/HsBase.h">https://github.com/FranklinChen/hugs9= 8-plus-Sep2006/blob/master/packages/base/include/HsBase.h</a><div dir=3D"au= to"> ; also see the git change history for that header file. </div><br></pre> --000000000000d774d105a467f6cb-- --===============7194309464465846423== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSHVncy1Vc2Vy cyBtYWlsaW5nIGxpc3QKSHVncy1Vc2Vyc0BoYXNrZWxsLm9yZwpodHRwOi8vbWFpbC5oYXNrZWxs Lm9yZy9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8vaHVncy11c2Vycwo= --===============7194309464465846423==--