[nhc-bugs] problems with 1.12

Malcolm Wallace Malcolm.Wallace@cs.york.ac.uk
Wed, 20 Mar 2002 14:03:44 +0000


(Forwarded message, original mistakenly sent only to Feliks.)

Feliks Kluzniak <feliks@crt.se> writes:

> I find this a little worrying.  The previous two versions of nhc were
> quite painless to build on all sorts of systems, including Solaris and
> OpenBSD: this is not an advantage that should be given up easily!

I am sorry that you are having these problems, but it is inevitable
that different operating systems have slightly different properties,
and we cannot possibly test on all of them.  Nevertheless, we do aim
for nhc98 to be as painless as possible to build on any Unix-like
machine.  Your bug reports are very valuable in helping us to achieve
that aim.

>   cd  /q/pd/nhc/nhc98-1.12/targets/ix86-OpenBSD/obj/hattools &&
>   /q/pd/nhc/nhc98-1.12/script/nhc98  +RTS -K10M -RTS +CTS -H20M -CTS  
>   -o HatObserve Run.o PrettyLibHighlight.o HighlightStyle.o PrettyExp.o
>   HatExpressionTree.o HatTrie.o HatTrace.o HatObserve.o 
>   /q/pd/nhc/nhc98-1.12/targets/ix86-OpenBSD/obj/hattools/hatlib.a
>
>   observe.c:604: Undefined symbol `_newFunTable' referenced from text
>   segment observe.c:616: Undefined symbol `_addToFunTable' referenced
>   from text segment observe.c:624: Undefined symbol
>   `_FunTableCheckArities' referenced from text segment collect2: ld 
>   returned 1 exit status

It looks like your machine's version of 'ar' might differ from GNU ar. 
Those symbols are defined in the source file src/hat/tools/FunTable.c,
which is compiled by $(CC) and added to the hatlib.a archive by the
command    ar -rc $(OBJDIR)/hatlib.a $(THOROBJS)
The error messages refer to `observe.c', which is also a member of the
archive. Perhaps you can use
    nm .../targets/ix86-OpenBSD/obj/hattools/hatlib.a
to determine whether the file Funtable.o exists in the archive, and
whether it does indeed define the symbols which are claimed to be missing.
 Send me any interesting information you find.

Regards,
    Malcolm