<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin-top:6.0pt;
        margin-right:0cm;
        margin-bottom:6.0pt;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:black;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:6.0pt;
        margin-right:0cm;
        margin-bottom:6.0pt;
        margin-left:36.0pt;
        mso-add-space:auto;
        font-size:12.0pt;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
p.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst, div.MsoListParagraphCxSpFirst
        {mso-style-priority:34;
        mso-style-type:export-only;
        margin-top:6.0pt;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        mso-add-space:auto;
        font-size:12.0pt;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
p.MsoListParagraphCxSpMiddle, li.MsoListParagraphCxSpMiddle, div.MsoListParagraphCxSpMiddle
        {mso-style-priority:34;
        mso-style-type:export-only;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        mso-add-space:auto;
        font-size:12.0pt;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxSpLast
        {mso-style-priority:34;
        mso-style-type:export-only;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:6.0pt;
        margin-left:36.0pt;
        mso-add-space:auto;
        font-size:12.0pt;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
p.Code, li.Code, div.Code
        {mso-style-name:Code;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:22.7pt;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;
        mso-fareast-language:EN-US;
        font-weight:bold;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;
        mso-fareast-language:EN-US;}
span.EmailStyle22
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle23
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle24
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:486365288;
        mso-list-type:hybrid;
        mso-list-template-ids:424543978 134807553 134807555 134807557 134807553 134807555 134807557 134807553 134807555 134807557;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor="white" lang="EN-GB" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal" style="margin-left:36.0pt">Reinstalling cabal-install (from Hackage) via cabal-install is currently not well exercised codepath. People usually install cabal from either Herbert's PPA, via ghcup or chocolatey package managers. So even I
 don't see reason installing cabal-install via cabal-install shouldn't work, I don't recommend it.<span style="color:windowtext;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext;mso-fareast-language:EN-GB">I have never heard of Herbert’s PPA, or ghcup, or choclatey.  Cabal is a Haskell program, hosted on Hackage, so shouldn’t I install it with cabal?  At least that’s what I thought.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext;mso-fareast-language:EN-GB">Of course, there’s a chicken-and-egg problem there.  I think I started with<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:54.0pt"><b><span style="font-family:"Courier New"">bash$ sudo apt install autoconf emacs git ghc cabal-install haskell-stack alex happy</span></b><b><span style="font-family:"Courier New";color:windowtext;mso-fareast-language:EN-GB"><o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="color:windowtext;mso-fareast-language:EN-GB">Mind you, I recall that I then got incomprehensible crashes when running cabal – something about “futex error”.     Then I think someone held my hand and got it going – and that
 might have involved a repository of Herbert’s.  But I quickly forgot, because I understood it as a temporary hack needed until some pretty major bug was fixed.   (Which leads me to ask: is the futex-error crash fixed?  Maybe it’s a WSL bug?)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext;mso-fareast-language:EN-GB">Anyway this is all a roundabout way of saying that it’s a surprise to me that I can’t use cabal to update itself.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext;mso-fareast-language:EN-GB">Sorry to be so dim ... but other users may be too so in a way I’m trying not to be too clever :-).  Thanks for beign responsive.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext;mso-fareast-language:EN-GB">Simon<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext;mso-fareast-language:EN-GB"><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal" style="margin:0cm;margin-bottom:.0001pt"><b><span lang="EN-US" style="color:windowtext;mso-fareast-language:EN-GB">From:</span></b><span lang="EN-US" style="color:windowtext;mso-fareast-language:EN-GB"> Oleg Grenrus <oleg.grenrus@iki.fi>
<br>
<b>Sent:</b> 31 May 2019 09:47<br>
<b>To:</b> Simon Peyton Jones <simonpj@microsoft.com>; cabal-devel@haskell.org<br>
<b>Subject:</b> Re: Installation failed<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p>Sorry, I wrote non-sense, the command is<br>
<br>
cabal user-config update<o:p></o:p></p>
<p>--<br>
<br>
cabal-install-3.0.0.0 is the latest (and in fact non-released) version you can have. Your last (failed) attempt actually wanted to install cabal-install-2.4.1.0!<br>
<br>
Reinstalling cabal-install (from Hackage) via cabal-install is currently not well exercised codepath. People usually install cabal from either Herbert's PPA, via ghcup or chocolatey package managers. So even I don't see reason installing cabal-install via cabal-install
 shouldn't work, I don't recommend it.<br>
<br>
The zlib.h failure is related to no zlib library - development parts installed. On Ubuntu the headers can be installed by "apt-get install zlib1g-dev". Unfortunately I have no experience with WSL, if that's as easy there.<o:p></o:p></p>
<p>- Oleg<o:p></o:p></p>
<div>
<p class="MsoNormal">On 31.5.2019 11.17, Simon Peyton Jones wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="margin-left:36.0pt">Few points, If you run Windows 10 (Pro?), you can setup to make symlinks without needing administrator privileges<o:p></o:p></p>
<p class="MsoNormal">Actually I’ve now switched to using the Windows Subsytem for Linux (WSL), which works pretty well and means that I don’t need to be the beta-tester for windows :-).   I should have said – this thread is about Ubuntu Linux in WSL.<o:p></o:p></p>
<p class="MsoNormal">- `cabal update-config` should populate your ~/.cabal/config with new default configuration. which will have install-dir: there too. You can also manually edit it to add the new configuration option.<o:p></o:p></p>
<p class="MsoNormal">Alas not:<o:p></o:p></p>
<p class="Code">bash$ cabal update-config<o:p></o:p></p>
<p class="Code">cabal: unrecognised command: update-config (try --help)<o:p></o:p></p>
<p class="Code">bash$ cabal --version<o:p></o:p></p>
<p class="Code">cabal-install version 3.0.0.0<o:p></o:p></p>
<p class="Code">compiled using version 3.0.0.0 of the Cabal library <o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Perhaps my cabal is out of date.  Hmm.  Maybe I should try to update it?</span><o:p></o:p></p>
<p class="Code">bash$ cabal update cabal<o:p></o:p></p>
<p class="Code">cabal: 'v2-update' repo(s): "cabal" can not be found in known remote repo(s):<o:p></o:p></p>
<p class="Code">hackage.haskell.org<o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Nope.  Maybe I should just install it afresh?  Maybe that would update it?</span><o:p></o:p></p>
<p class="Code">basj$ cabal install cabal<o:p></o:p></p>
<p class="Code">Resolving dependencies...<o:p></o:p></p>
<p class="Code">cabal: Could not resolve dependencies:<o:p></o:p></p>
<p class="Code">[__0] trying: cabal-0.0.0.0 (user goal)<o:p></o:p></p>
<p class="Code">[__1] unknown package: youProbablyWantCapitalCabal (dependency of cabal)<o:p></o:p></p>
<p class="Code">[__1] fail (backjumping, conflict set: cabal, youProbablyWantCapitalCabal)<o:p></o:p></p>
<p class="Code">After searching the rest of the dependency tree exhaustively, these were the<o:p></o:p></p>
<p class="Code">goals I've had most trouble fulfilling: cabal, youProbablyWantCapitalCabal<o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Oh dear.  I have a vague hind-brain memory that you have to install “cabal-install” rather than “cabal”.   Let’s try that.</span><o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt"><span style="color:windowtext"><long output shown later></span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">That failed too.  Clutching at straws, that “</span>youProbablyWantCapitalCabal<span style="color:windowtext">” is suggestive. Let’s try:</span><o:p></o:p></p>
<p class="Code">bash$ cabal install Cabal<o:p></o:p></p>
<p class="Code">Resolving dependencies...<o:p></o:p></p>
<p class="Code">Up to date<o:p></o:p></p>
<p class="Code">cabal: installdir is not defined. Set it in your cabal config file or use<o:p></o:p></p>
<p class="Code">--installdir=<path><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Back to that again. </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">I’m not truly stuck on any of this.  But somehow my high failure rate is discouraging, and I thought you’d probably want to know how I stumbled.</span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Where could I read about the difference between “cabal install Cabal” and “cabal install cabal-install”?</span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Simon</span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Here’s the cabal install cabal-install output, which has a totally new failure.  Something about zlib.h, but I have no idea how to fix it.</span><o:p></o:p></p>
<p class="Code">simonpj@MSRC-3645512:~/tmp$ cabal install cabal-install<o:p></o:p></p>
<p class="Code">Resolving dependencies...<o:p></o:p></p>
<p class="Code">Build profile: -w ghc-8.6.4 -O1<o:p></o:p></p>
<p class="Code">In order, the following will be built (use -v for more details):<o:p></o:p></p>
<p class="Code">- async-2.2.1 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- base16-bytestring-0.1.1.6 (lib:base16-bytestring) (requires download & build)<o:p></o:p></p>
<p class="Code">- base64-bytestring-1.0.0.2 (lib) (requires build)<o:p></o:p></p>
<p class="Code">- cryptohash-sha256-0.11.101.0 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- digest-0.0.1.2 (lib:digest) (requires download & build)<o:p></o:p></p>
<p class="Code">- echo-0.1.3 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- ed25519-0.0.5.0 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- edit-distance-0.2.2.1 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- hsc2hs-0.68.4 (exe:hsc2hs) (requires download & build)<o:p></o:p></p>
<p class="Code">- network-uri-2.6.1.0 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- tar-0.5.1.0 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- zlib-0.6.2 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- resolv-0.1.1.2 (lib:resolv) (requires download & build)<o:p></o:p></p>
<p class="Code">- network-3.1.0.0 (lib:network) (requires download & build)<o:p></o:p></p>
<p class="Code">- zip-archive-0.4.1 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- hackage-security-0.5.3.0 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- HTTP-4000.3.13 (lib) (requires download & build)<o:p></o:p></p>
<p class="Code">- cabal-install-2.4.1.0 (exe:cabal) (requires download & build)<o:p></o:p></p>
<p class="Code">Downloading  base16-bytestring-0.1.1.6<o:p></o:p></p>
<p class="Code">Starting     base64-bytestring-1.0.0.2 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   base16-bytestring-0.1.1.6<o:p></o:p></p>
<p class="Code">Downloading  cryptohash-sha256-0.11.101.0<o:p></o:p></p>
<p class="Code">Starting     base16-bytestring-0.1.1.6 (all, legacy fallback)<o:p></o:p></p>
<p class="Code">Downloaded   cryptohash-sha256-0.11.101.0<o:p></o:p></p>
<p class="Code">Downloading  digest-0.0.1.2<o:p></o:p></p>
<p class="Code">Starting     cryptohash-sha256-0.11.101.0 (lib)<o:p></o:p></p>
<p class="Code">Building     base64-bytestring-1.0.0.2 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   digest-0.0.1.2<o:p></o:p></p>
<p class="Code">Downloading  ed25519-0.0.5.0<o:p></o:p></p>
<p class="Code">Building     base16-bytestring-0.1.1.6 (all, legacy fallback)<o:p></o:p></p>
<p class="Code">Starting     digest-0.0.1.2 (all, legacy fallback)<o:p></o:p></p>
<p class="Code">Downloaded   ed25519-0.0.5.0<o:p></o:p></p>
<p class="Code">Downloading  zlib-0.6.2<o:p></o:p></p>
<p class="Code">Starting     ed25519-0.0.5.0 (lib)<o:p></o:p></p>
<p class="Code">Building     cryptohash-sha256-0.11.101.0 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   zlib-0.6.2<o:p></o:p></p>
<p class="Code">Downloading  resolv-0.1.1.2<o:p></o:p></p>
<p class="Code">Installing   base16-bytestring-0.1.1.6 (all, legacy fallback)<o:p></o:p></p>
<p class="Code">Starting     zlib-0.6.2 (lib)<o:p></o:p></p>
<p class="Code">Building     ed25519-0.0.5.0 (lib)<o:p></o:p></p>
<p class="Code">Installing   base64-bytestring-1.0.0.2 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   resolv-0.1.1.2<o:p></o:p></p>
<p class="Code">Downloading  echo-0.1.3<o:p></o:p></p>
<p class="Code">Completed    base16-bytestring-0.1.1.6 (all, legacy fallback)<o:p></o:p></p>
<p class="Code">Completed    base64-bytestring-1.0.0.2 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   echo-0.1.3<o:p></o:p></p>
<p class="Code">Downloading  hsc2hs-0.68.4<o:p></o:p></p>
<p class="Code">Starting     echo-0.1.3 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   hsc2hs-0.68.4<o:p></o:p></p>
<p class="Code">Downloading  network-3.1.0.0<o:p></o:p></p>
<p class="Code">Starting     hsc2hs-0.68.4 (exe:hsc2hs)<o:p></o:p></p>
<p class="Code">Installing   cryptohash-sha256-0.11.101.0 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   network-3.1.0.0<o:p></o:p></p>
<p class="Code">Downloading  edit-distance-0.2.2.1<o:p></o:p></p>
<p class="Code">Completed    cryptohash-sha256-0.11.101.0 (lib)<o:p></o:p></p>
<p class="Code">Building     echo-0.1.3 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   edit-distance-0.2.2.1<o:p></o:p></p>
<p class="Code">Downloading  tar-0.5.1.0<o:p></o:p></p>
<p class="Code">Starting     edit-distance-0.2.2.1 (lib)<o:p></o:p></p>
<p class="Code">Building     hsc2hs-0.68.4 (exe:hsc2hs)<o:p></o:p></p>
<p class="Code">Downloaded   tar-0.5.1.0<o:p></o:p></p>
<p class="Code">Downloading  async-2.2.1<o:p></o:p></p>
<p class="Code">Starting     tar-0.5.1.0 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   async-2.2.1<o:p></o:p></p>
<p class="Code">Downloading  network-uri-2.6.1.0<o:p></o:p></p>
<p class="Code">Installing   echo-0.1.3 (lib)<o:p></o:p></p>
<p class="Code">Starting     async-2.2.1 (lib)<o:p></o:p></p>
<p class="Code">Installing   ed25519-0.0.5.0 (lib)<o:p></o:p></p>
<p class="Code">Building     edit-distance-0.2.2.1 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   network-uri-2.6.1.0<o:p></o:p></p>
<p class="Code">Downloading  zip-archive-0.4.1<o:p></o:p></p>
<p class="Code">Starting     network-uri-2.6.1.0 (lib)<o:p></o:p></p>
<p class="Code">Completed    echo-0.1.3 (lib)<o:p></o:p></p>
<p class="Code">Completed    ed25519-0.0.5.0 (lib)<o:p></o:p></p>
<p class="Code">Building     tar-0.5.1.0 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   zip-archive-0.4.1<o:p></o:p></p>
<p class="Code">Downloading  HTTP-4000.3.13<o:p></o:p></p>
<p class="Code">Building     async-2.2.1 (lib)<o:p></o:p></p>
<p class="Code">Building     network-uri-2.6.1.0 (lib)<o:p></o:p></p>
<p class="Code">Downloaded   HTTP-4000.3.13<o:p></o:p></p>
<p class="Code">Downloading  hackage-security-0.5.3.0<o:p></o:p></p>
<p class="Code">Downloaded   hackage-security-0.5.3.0<o:p></o:p></p>
<p class="Code">Downloading  cabal-install-2.4.1.0<o:p></o:p></p>
<p class="Code">Downloaded   cabal-install-2.4.1.0<o:p></o:p></p>
<p class="Code">Installing   async-2.2.1 (lib)<o:p></o:p></p>
<p class="Code">Installing   edit-distance-0.2.2.1 (lib)<o:p></o:p></p>
<p class="Code">Completed    async-2.2.1 (lib)<o:p></o:p></p>
<p class="Code">Completed    edit-distance-0.2.2.1 (lib)<o:p></o:p></p>
<p class="Code">Installing   hsc2hs-0.68.4 (exe:hsc2hs)<o:p></o:p></p>
<p class="Code">Completed    hsc2hs-0.68.4 (exe:hsc2hs)<o:p></o:p></p>
<p class="Code">Installing   network-uri-2.6.1.0 (lib)<o:p></o:p></p>
<p class="Code">Completed    network-uri-2.6.1.0 (lib)<o:p></o:p></p>
<p class="Code">Installing   tar-0.5.1.0 (lib)<o:p></o:p></p>
<p class="Code">Completed    tar-0.5.1.0 (lib)<o:p></o:p></p>
<p class="Code"> <o:p></o:p></p>
<p class="Code">Failed to build digest-0.0.1.2. The failure occurred during the configure<o:p></o:p></p>
<p class="Code">step.<o:p></o:p></p>
<p class="Code">Build log (<o:p></o:p></p>
<p class="Code">/home/simonpj/.cabal/logs/ghc-8.6.4/digest-0.0.1.2-14bc149eb1d9c6a16b30ce20fef469dafeaea1cbba4f9615d23d3b4f1a2da8bd.log<o:p></o:p></p>
<p class="Code">):<o:p></o:p></p>
<p class="Code">Configuring digest-0.0.1.2...<o:p></o:p></p>
<p class="Code">cabal: Missing dependency on a foreign library:<o:p></o:p></p>
<p class="Code">* Missing (or bad) header file: zlib.h<o:p></o:p></p>
<p class="Code">* Missing (or bad) C library: z<o:p></o:p></p>
<p class="Code">This problem can usually be solved by installing the system package that<o:p></o:p></p>
<p class="Code">provides this library (you may need the "-dev" version). If the library is<o:p></o:p></p>
<p class="Code">already installed but in a non-standard location then you can use the flags<o:p></o:p></p>
<p class="Code">--extra-include-dirs= and --extra-lib-dirs= to specify where it is.If the<o:p></o:p></p>
<p class="Code">library file does exist, it may contain errors that are caught by the C<o:p></o:p></p>
<p class="Code">compiler at the preprocessing stage. In this case you can re-run configure<o:p></o:p></p>
<p class="Code">with the verbosity flag -v3 to see the error messages.<o:p></o:p></p>
<p class="Code">If the header file does exist, it may contain errors that are caught by the C<o:p></o:p></p>
<p class="Code">compiler at the preprocessing stage. In this case you can re-run configure<o:p></o:p></p>
<p class="Code">with the verbosity flag -v3 to see the error messages.<o:p></o:p></p>
<p class="Code"> <o:p></o:p></p>
<p class="Code"> <o:p></o:p></p>
<p class="Code">Failed to build zlib-0.6.2. The failure occurred during the configure step.<o:p></o:p></p>
<p class="Code">Build log (<o:p></o:p></p>
<p class="Code">/home/simonpj/.cabal/logs/ghc-8.6.4/zlib-0.6.2-2039caedabd32f9ed378900645b72766a462d68bf828625f67296cbc28fa173e.log<o:p></o:p></p>
<p class="Code">):<o:p></o:p></p>
<p class="Code">Configuring library for zlib-0.6.2..<o:p></o:p></p>
<p class="Code">cabal: Missing dependency on a foreign library:<o:p></o:p></p>
<p class="Code">* Missing (or bad) header file: zlib.h<o:p></o:p></p>
<p class="Code">* Missing (or bad) C library: z<o:p></o:p></p>
<p class="Code">This problem can usually be solved by installing the system package that<o:p></o:p></p>
<p class="Code">provides this library (you may need the "-dev" version). If the library is<o:p></o:p></p>
<p class="Code">already installed but in a non-standard location then you can use the flags<o:p></o:p></p>
<p class="Code">--extra-include-dirs= and --extra-lib-dirs= to specify where it is.If the<o:p></o:p></p>
<p class="Code">library file does exist, it may contain errors that are caught by the C<o:p></o:p></p>
<p class="Code">compiler at the preprocessing stage. In this case you can re-run configure<o:p></o:p></p>
<p class="Code">with the verbosity flag -v3 to see the error messages.<o:p></o:p></p>
<p class="Code">If the header file does exist, it may contain errors that are caught by the C<o:p></o:p></p>
<p class="Code">compiler at the preprocessing stage. In this case you can re-run configure<o:p></o:p></p>
<p class="Code">with the verbosity flag -v3 to see the error messages.<o:p></o:p></p>
<p class="Code"> <o:p></o:p></p>
<p class="Code">cabal: Failed to build digest-0.0.1.2 (which is required by<o:p></o:p></p>
<p class="Code">cabal-install-2.4.1.0). See the build log above for details.<o:p></o:p></p>
<p class="Code">Failed to build zlib-0.6.2 (which is required by cabal-install-2.4.1.0). See<o:p></o:p></p>
<p class="Code">the build log above for details.<o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"> </span><o:p></o:p></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal" style="margin:0cm;margin-bottom:.0001pt"><b><span lang="EN-US" style="color:windowtext;mso-fareast-language:EN-GB">From:</span></b><span lang="EN-US" style="color:windowtext;mso-fareast-language:EN-GB"> Oleg Grenrus
<a href="mailto:oleg.grenrus@iki.fi"><oleg.grenrus@iki.fi></a> <br>
<b>Sent:</b> 30 May 2019 20:30<br>
<b>To:</b> Simon Peyton Jones <a href="mailto:simonpj@microsoft.com"><simonpj@microsoft.com></a>;
<a href="mailto:cabal-devel@haskell.org">cabal-devel@haskell.org</a><br>
<b>Subject:</b> Re: Installation failed</span><o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"> <o:p></o:p></p>
<p>Hi again Simon,<br>
<br>
Few points, If you run Windows 10 (Pro?), you can setup to make symlinks without needing administrator privileges. I used
<a href="https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgit-for-windows%2Fgit%2Fwiki%2FSymbolic-Links&data=02%7C01%7Csimonpj%40microsoft.com%7C08337e4ce9e648d5bc1408d6e5a48b08%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636948892232865256&sdata=0fPAqXV4ZiDRlp4OG2mMwo3vGBBaeGVsl2M61BfGoQk%3D&reserved=0">
https://github.com/git-for-windows/git/wiki/Symbolic-Links</a> guide. Unfortunately I don't remember all the details I did (i.e. if the guide is complete), but enabling Developer Mode is easy to forget.<br>
<br>
About installing and symlinking:<br>
- `cabal update-config` should populate your ~/.cabal/config with new default configuration. which will have install-dir: there too. You can also manually edit it to add the new configuration option.<br>
- Most of install woes are fixed in March [1], but there weren't a release with those fixes.<br>
<br>
- [1] <a href="https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fhaskell%2Fcabal%2Fpull%2F5870&data=02%7C01%7Csimonpj%40microsoft.com%7C08337e4ce9e648d5bc1408d6e5a48b08%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636948892232870247&sdata=wTMiOj89EWExEHm6%2BzDEjkMpNA6RRsnN%2BjW9zvESWZA%3D&reserved=0">
https://github.com/haskell/cabal/pull/5870<span style="color:blue"><br>
</span></a><o:p></o:p></p>
<p>Cheers,<br>
Oleg<o:p></o:p></p>
<div>
<p class="MsoNormal">On 30.5.2019 16.57, Simon Peyton Jones wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">Dear Cabal developers<o:p></o:p></p>
<p class="MsoNormal">More woe:<o:p></o:p></p>
<p class="Code">simonpj@MSRC-3645512:~$ cabal install lhs2tex<o:p></o:p></p>
<p class="Code">Resolving dependencies...<o:p></o:p></p>
<p class="Code">Up to date<o:p></o:p></p>
<p class="Code">cabal: installdir is not defined. Set it in your cabal config file or use<o:p></o:p></p>
<p class="Code">--installdir=<path><o:p></o:p></p>
<p class="MsoNormal">In the olden days, didn’t cabal install by default in ~/.cabal/bin?<o:p></o:p></p>
<p class="MsoNormal">Never mind, let’s do what it asks:<o:p></o:p></p>
<p class="Code">simonpj@MSRC-3645512:~$ cabal install lhs2tex --installdir=/usr/bin<o:p></o:p></p>
<p class="Code">Resolving dependencies...<o:p></o:p></p>
<p class="Code">Up to date<o:p></o:p></p>
<p class="Code">Symlinking 'lhs2TeX'<o:p></o:p></p>
<p class="Code">/usr/bin/lhs2TeX: createSymbolicLink: permission denied (Permission denied)<o:p></o:p></p>
<p class="MsoNormal">Darn: I need to be super-user.  Fine:<o:p></o:p></p>
<p class="Code">simonpj@MSRC-3645512:~$ sudo cabal install lhs2tex --installdir=/usr/bin<o:p></o:p></p>
<p class="Code">[sudo] password for simonpj: <o:p></o:p></p>
<p class="Code">cabal: unrecognized 'install' option `--installdir=/usr/bin'<o:p></o:p></p>
<p class="MsoNormal">OK _<i>now</i>_ I really am stumped.  It asked me to provide that option, and now it says it’s unrecognised.<o:p></o:p></p>
<p class="MsoNormal">(This is in a bash shell running in emacs, if it makes a difference.)<o:p></o:p></p>
<p class="MsoNormal">What next?<o:p></o:p></p>
<p class="MsoNormal">Thanks<o:p></o:p></p>
<p class="MsoNormal">Simon<o:p></o:p></p>
<p class="Code"> <o:p></o:p></p>
<p class="MsoNormal" style="margin:0cm;margin-bottom:.0001pt"><span style="mso-fareast-language:EN-GB"><br>
<br>
<br>
</span><o:p></o:p></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>cabal-devel mailing list<o:p></o:p></pre>
<pre><a href="mailto:cabal-devel@haskell.org">cabal-devel@haskell.org</a><o:p></o:p></pre>
<pre><a href="https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmail.haskell.org%2Fcgi-bin%2Fmailman%2Flistinfo%2Fcabal-devel&data=02%7C01%7Csimonpj%40microsoft.com%7C08337e4ce9e648d5bc1408d6e5a48b08%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636948892232875238&sdata=HC9PmIf%2BCyBoDmhg%2BbUiJTyDEmH5pa3Az5Ru%2FIiIyYU%3D&reserved=0">http://mail.haskell.org/cgi-bin/mailman/listinfo/cabal-devel</a><o:p></o:p></pre>
</blockquote>
</div>
</blockquote>
</div>
</div>
</body>
</html>