Problems building GHC 5.00 on Solaris 2.5.1

Whitford, Alister awhitford@lucent.com
Wed, 16 May 2001 17:36:01 +0100


This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_001_01C0DE26.4B412D20
Content-Type: text/plain;
	charset="iso-8859-1"

I'm trying to build GHC 5.00 on Solaris 2.5.1.

I've got most of the way there.  So far, I've had to:

- Hack glafp-utils/sgmlverb/Makefile because by lex doesn't support the -8
option.

- Hack mk/target.mk in several places because my ld doesn't support the -x
option.

- Hack configure.in to prevent it from trying to build ReadLine (which was
failing.)

(Any comments on the above?)

The compiler and standard libraries have all built.  I'm now attempting to
build DrIFT, but I get the following error:

../../../ghc/compiler/ghc-inplace -o DrIFT -ldl -cpp -fglasgow-exts -package
text -O       ChaseImports.o CommandP.o DataP.o DigitToInt.o DrIFT.o
Literate.o ParseLib2.o PreludData.o Pretty.o RuleUtils.o StandardRules.o
UserRuleBinary.o UserRuleXml.o UserRules.o
Undefined                       first referenced
 symbol                             in file
siginterrupt
/tmp/ajw/ghc-5.00-build-from-4.08.2/ghc/driver/../rts/libHSrts.a(Signals.o)
ld: fatal: Symbol referencing errors. No output written to DrIFT

In fact, this occurs whenever I run ghc-inplace to try to create an
executable :-(

It turns out that siginterrupt is defined in /usr/ucblib/libucb.a, so if I
muck about a bit, I can get a working executable like so:

/tmp/ajw/ghc-5.00-build-from-4.08.2/ghc/compiler/ghc-inplace -o test
-L/usr/ucblib -lucb test.lhs

So the question is: how do I get libHSrts.a to link automatically with
/usr/ucblib/libucb.a so that the compiler will work properly?

Many thanks in advance for any help!

Cheers,
Alister.

------_=_NextPart_001_01C0DE26.4B412D20
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1">
<META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
5.5.2653.12">
<TITLE>Problems building GHC 5.00 on Solaris 2.5.1</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=3D2>I'm trying to build GHC 5.00 on Solaris 2.5.1.</FONT>
</P>

<P><FONT SIZE=3D2>I've got most of the way there.&nbsp; So far, I've =
had to:</FONT>
</P>

<P><FONT SIZE=3D2>- Hack glafp-utils/sgmlverb/Makefile because by lex =
doesn't support the -8 option.</FONT>
</P>

<P><FONT SIZE=3D2>- Hack mk/target.mk in several places because my ld =
doesn't support the -x option.</FONT>
</P>

<P><FONT SIZE=3D2>- Hack configure.in to prevent it from trying to =
build ReadLine (which was failing.)</FONT>
</P>

<P><FONT SIZE=3D2>(Any comments on the above?)</FONT>
</P>

<P><FONT SIZE=3D2>The compiler and standard libraries have all =
built.&nbsp; I'm now attempting to build DrIFT, but I get the following =
error:</FONT>
</P>

<P><FONT SIZE=3D2>../../../ghc/compiler/ghc-inplace -o DrIFT -ldl -cpp =
-fglasgow-exts -package text -O&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
ChaseImports.o CommandP.o DataP.o DigitToInt.o DrIFT.o Literate.o =
ParseLib2.o PreludData.o Pretty.o RuleUtils.o StandardRules.o =
UserRuleBinary.o UserRuleXml.o UserRules.o</FONT></P>

<P><FONT =
SIZE=3D2>Undefined&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp; first referenced</FONT>
<BR><FONT =
SIZE=3D2>&nbsp;symbol&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; in file</FONT>
<BR><FONT =
SIZE=3D2>siginterrupt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp; =
/tmp/ajw/ghc-5.00-build-from-4.08.2/ghc/driver/../rts/libHSrts.a(Signals=
.o)</FONT>
<BR><FONT SIZE=3D2>ld: fatal: Symbol referencing errors. No output =
written to DrIFT</FONT>
</P>

<P><FONT SIZE=3D2>In fact, this occurs whenever I run ghc-inplace to =
try to create an executable :-(</FONT>
</P>

<P><FONT SIZE=3D2>It turns out that siginterrupt is defined in =
/usr/ucblib/libucb.a, so if I muck about a bit, I can get a working =
executable like so:</FONT></P>

<P><FONT =
SIZE=3D2>/tmp/ajw/ghc-5.00-build-from-4.08.2/ghc/compiler/ghc-inplace =
-o test -L/usr/ucblib -lucb test.lhs</FONT>
</P>

<P><FONT SIZE=3D2>So the question is: how do I get libHSrts.a to link =
automatically with /usr/ucblib/libucb.a so that the compiler will work =
properly?</FONT></P>

<P><FONT SIZE=3D2>Many thanks in advance for any help!</FONT>
</P>

<P><FONT SIZE=3D2>Cheers,</FONT>
<BR><FONT SIZE=3D2>Alister.</FONT>
</P>

</BODY>
</HTML>
------_=_NextPart_001_01C0DE26.4B412D20--