GHC 7.2.2 Distribution.Simple.Program.Ar

Duncan Coutts duncan.coutts at
Fri May 18 22:38:38 CEST 2012

On 18 May 2012 20:20, Joe Buehler <aspam at> wrote:
> I built GHC 7.2.2 on a LINUX box running RHEL 3.  When compiling a package using
> this GHC it is trying to invoke ar thus:
> execve("/usr/bin/ar", ["/usr/bin/ar", "-r", "-c",
> "dist/build/libHSregex-base-0.93."..., "dist/build/Text/Regex/Base.o",
> "dist/build/Text/Regex/Base/Regex"..., "dist/build/Text/Regex/Base/Conte"...,
> "dist/build/Text/Regex/Base/Impl."...], [/* 45 vars */]) = 0
> My version of ar does not like being invoked as "/usr/bin/ar -r -c lib.a file
> file file...", it complains that the .a file is missing.  I believe it should be
> "/usr/bin/ar rc lib.a file file file...".

The -c flag is to tell it to create the archive (so not to complain if
the file is missing).

You're saying it accepts "ar rc" but rejects "ar -r -c" ?

I was under the impression that posix allowed the '-' on the ar
command line flags. e.g.

> This appears to originate in Distribution.Simple.Program.Ar.


> Can someone tell me what is going on here?

I'm very surprised it's not working on some version of Red Hat. This
has worked on many varieties of linux for many years. You don't have
some non-standard ar installed do you? What version of gnu binutils?
(ar -V)


More information about the Glasgow-haskell-users mailing list