Help Creating Libraries

Dominic Steinitz dominic.steinitz@blueyonder.co.uk
Tue, 15 Apr 2003 22:22:17 +0100


Simon,

Problem 2 is now cured. I installed libncurses-devel and ghc is compiling
away. I'm off to bed. Many thanks for your help. Should I suggest some text
to the ghc build guide to say that you need these two packages?

Dominic Steinitz
----- Original Message -----
From: "Dominic Steinitz" <dominic.steinitz@blueyonder.co.uk>
To: "Simon Peyton-Jones" <simonpj@microsoft.com>; "Simon Marlow"
<simonmar@microsoft.com>
Cc: <libraries@haskell.org>
Sent: Tuesday, April 15, 2003 8:59 PM
Subject: Re: Help Creating Libraries


> Simon,
>
> Thanks that's cured problem 1 but I still have problem 2. I've searched on
> "ghc lreadline" and the only advice I could find was to install the
> readline-devel package.
>
> [dom@tility fptools]$ rpm -qa | grep readline
> readline-devel-4.2a-4
> readline-4.2a-1mdk
> [dom@tility fptools]$
>
> I did this but still got the same error.
>
> /usr/bin/ghc -M -optdep-f -optdep.depend  -osuf
> o    -ldl -cpp -DPKG_TOOL -DWANT_PRETTY -package lang -package
util -package
> text -O Main.hs Package.hs ParsePkgConfLite.hs
> make all
> /usr/bin/ghc -o ghc-pkg.bin -ldl -cpp -DPKG_TOOL -DWANT_PRETTY -package
> lang -package util -package text -O       Main.o Package.o
> ParsePkgConfLite.o
> /usr/bin/ld: cannot find -lncurses
> collect2: ld returned 1 exit status
> make[4]: *** [ghc-pkg.bin] Error 1
> make[3]: *** [boot] Error 2
> make[2]: *** [boot] Error 1
> make[1]: *** [boot] Error 1
> make[1]: Leaving directory `/home/dom/fptools/ghc'
> make: *** [all] Error 1
> [dom@tility fptools]$
>
> Dominic Steinitz
> ----- Original Message -----
> From: "Simon Peyton-Jones" <simonpj@microsoft.com>
> To: "Dominic Steinitz" <dominic.steinitz@blueyonder.co.uk>; "Simon Marlow"
> <simonmar@microsoft.com>
> Cc: <libraries@haskell.org>
> Sent: Tuesday, April 15, 2003 8:00 AM
> Subject: RE: Help Creating Libraries
>
>
> OK, problem 1 is that you have to say 'autoconf' in fptools/ghc, as well
> as in fptools.
> The documentation may well be out of date on this point -- I'll check.
>
> Problem 2, the readline thing is a regular gotcha that bites us at about
> weekly intervals. I don't understand the problem, let alone the
> solution, so I'll let Simon reply.  I suppose it could be a consequence
> of problem 1
>
> Simon
>
> | -----Original Message-----
> | From: Dominic Steinitz [mailto:dominic.steinitz@blueyonder.co.uk]
> | Sent: 14 April 2003 20:07
> | To: Simon Peyton-Jones; Simon Marlow
> | Cc: libraries@haskell.org
> |
> | Simon,
> |
> | Thanks.
> |
> | I checked out as follows:
> |
> | [dom@tility fptools]$ cvs -d :pserver:anoncvs@glass.cse.ogi.edu:/cvs
> | checkout -r
> |  ghc-5-04-2 ghc hslibs libraries
> |
> | But got the following. I'm not sure what it's telling me.
> |
> | configure: creating ./config.status
> | config.status: creating mk/config.mk
> | config.status: creating mk/config.h
> | config.status: executing default commands
> | configure: configuring in ghc
> | configure: running /bin/sh
> | /configure --prefix=/usr/local  --cache-file=/dev/null --srcdir=.
> | ./configure: ./configure: No such file or directory
> | configure: error: /bin/sh ./configure failed for ghc
> | [dom@tility fptools]$
> |
> | On the assumption this wasn't serious I then tried
> |
> |  1004  cd ../glafp-utils/
> |  1005  make boot
> |  1006  make
> |  1007  cd ../ghc
> |  1008  make boot
> | [dom@tility ghc]$
> |
> | but got the following:
> |
> | /usr/bin/ghc -M -optdep-f -optdep.depend  -osuf
> | o    -ldl -cpp -DPKG_TOOL -DWANT_PRETTY -package lang -package util
> -package
> | text -O Main.hs Package.hs ParsePkgConfLite.hs
> | make all
> | /usr/bin/ghc -o ghc-pkg.bin -ldl -cpp -DPKG_TOOL -DWANT_PRETTY
> -package
> | lang -package util -package text -O       Main.o Package.o
> | ParsePkgConfLite.o
> | /usr/bin/ld: cannot find -lreadline
> | collect2: ld returned 1 exit status
> | make[3]: *** [ghc-pkg.bin] Error 1
> | make[2]: *** [boot] Error 2
> | make[1]: *** [boot] Error 1
> | make: *** [boot] Error 1
> | [dom@tility ghc]$
> |
> |
> | Dominic Steinitz
> | ----- Original Message -----
> | From: "Simon Peyton-Jones" <simonpj@microsoft.com>
> | To: "Dominic Steinitz" <dominic.steinitz@blueyonder.co.uk>; "Simon
> Marlow"
> | <simonmar@microsoft.com>
> | Cc: <libraries@haskell.org>
> | Sent: Monday, April 14, 2003 9:14 AM
> | Subject: RE: Help Creating Libraries
> |
> |
> | Aha. It seems that the libraries tree is not independent of the 'ghc'
> | tree; this is because the 'base/GHC/' subtree is absolutely GHC
> | specific.
> |
> | The quickest workaround is to check out ghc/ as well as libraries/,
> and
> | say 'make boot' in the ghc tree.  Don't forget to do the 'configure'
> | stuff.
> |
> | Also, compiling the libraries tree probably assumes that you want to
> use
> | the ghc in the same tree.  You may need to add 'HC=ghc' to your 'make'
> | calls.
> |
> | Simon
> |
> | | -----Original Message-----
> | | From: Dominic Steinitz [mailto:dominic.steinitz@blueyonder.co.uk]
> | | Sent: 12 April 2003 12:09
> | | To: Simon Marlow; Simon Peyton-Jones
> | | Cc: libraries-request@haskell.org; glasgow-haskell-users@haskell.org
> | |
> | | I've tried building the libraries tree but got the following. Can
> | anyone
> | | help?
> | |
> | | I'm not sure what name to give the proposed crypto library. Should
> it
> | be
> | | Data.Crypto?
> | |
> | | [dom@tility libraries]$ make boot
> | |
> |
> ------------------------------------------------------------------------
> | | ===fptools== Recursively making `boot' in base haskell98 network
> | haskell-src
> | | ...
> | | PWD = /home/dom/fptools/libraries
> | |
> |
> ------------------------------------------------------------------------
> | |
> |
> ------------------------------------------------------------------------
> | | ==fptools== make boot -r;
> | |  in /home/dom/fptools/libraries/base
> | |
> |
> ------------------------------------------------------------------------
> | | make[1]: *** No rule to make target `/prelude/primops.txt', needed
> by
> | | `GHC/PrimopWrappers.hs'.  Stop.
> | | make: *** [boot] Error 1
> | | [dom@tility libraries]$
> | |
> | | Dominic Steinitz
> | | ----- Original Message -----
> | | From: "Simon Marlow" <simonmar@microsoft.com>
> | | To: "Simon Peyton-Jones" <simonpj@microsoft.com>; "Dominic Steinitz"
> | | <dominic.steinitz@blueyonder.co.uk>
> | | Sent: Friday, April 11, 2003 10:48 AM
> | | Subject: RE: Help Creating Libraries
> | |
> | |
> | | Hi Dominic,
> | |
> | | There are two ways to add libraries: do it directly in a GHC tree
> | using
> | | our build infrastructure, or try to do it on your own.  We tried to
> | get
> | | some interest going in developing a separate build infrastructure
> for
> | | people in your position (see discussions on the GHC lists), but that
> | | effort seems to be stalled.
> | |
> | | Cheers,
> | | Simon
> | |
> | | > -----Original Message-----
> | | > From: Simon Peyton-Jones
> | | > Sent: 07 April 2003 08:51
> | | > To: Dominic Steinitz; Simon Marlow
> | | > Cc: Simon Peyton-Jones
> | | >
> | | > Dominic
> | | >
> | | > Excellent!  Simon is the library king, but he's away today.
> | | > I think it goes like this: you agree with Simon (and
> | | > preferably the libraries@haskell.org) libraries list what the
> | | > name and signature of your module will be.  We give you CVS
> | | > access.  You check out the libraries tree (no need to build
> | | > GHC if you don't want to) and add your library.  With Haddock
> | | > documentation.  That's it.
> | | >
> | | > But it ought to be documented -- then more people might do it!
> | | >
> | | > Simon
> | | >
> | | > | -----Original Message-----
> | | > | From: Dominic Steinitz
> [mailto:dominic.steinitz@blueyonder.co.uk]
> | | > | Sent: 06 April 2003 17:09
> | | > | To: Simon Peyton-Jones; Simon Marlow
> | | > |
> | | > | Simon & Simon,
> | | > |
> | | > | I'd quite like to create a crypto library. There are some
> | | > modules already
> | | > | scattered around the place: md5, sha1, des and rsa. I've
> | | > just added cipher
> | | > | block chaining mode to the existing des module.
> | | > |
> | | > | I'd be grateful for any advice on how to set about creating
> | | > a library. Do I
> | | > | have to check out the ghc source from CVS and build it and
> | | > somehow add an
> | | > | extra library? Is there a document describing how to do it?
> | | > Should I be
> | | > | asking this question on the libraries mailing list?
> | | > |
> | | > | Dominic Steinitz
> | | > |
> | | >
> | | >
> | |
> |
> |
> |
>
>
>