sthou@athena.mit.edu (Stewart T. Hou) (06/24/91)
First of all I want to thank Yonezawa for porting AKCL to NeXT.
It compiles fast!
I have a C routine which I call from LISP using the KCL C/LISP
interface.
It works on a Sun, but on my NeXTstation I found random() and srandom()
don't work (using the compiler that comes with the port).
The problem is illustrated below. Could someone suggest something to
make it work?
(defentry c-random-num
()
(void foo_func))
(Clines
%
% foo_func()
% {
% printf("random() doesn't work...\n");
%
% printf("%d\n", random());
%
% printf("done\n");
% }
%
)
Here's what happens when the compiled code is executed:
NEURAL>(c-random-num)
random() doesn't work...
Error: NIL is not a VECTOR
Error signalled by C-RANDOM-NUM.
Broken at C-RANDOM-NUM. Type :H for Help.
NEURAL>>
I am using
AKCL (Austin Kyoto Common Lisp) Version(1.530) Sun Jun 16 16:48:31 CDT
1991
Contains Enhancements by W. Schelter; NeXT Version(1.01) by N. Yonezawa
and the compiler command was
/usr/local/lib/kcl/kcl-cc -DVOL=volatile -fwritable-strings -c -I.
my-code.c -w
Both random() and srandom() are recognized in the program because there
was
no messages like "undefined _random symbol" when the object code is
loaded,
as shown below
NEURAL>(load "my-code.o")
Loading my-code.o
start address -T 283000 Finished loading my-code.o
176
Thanks for inputs.
Stewart
--
--Stewart T. Hou <sthou@athena.mit.edu>yonezawa@m.cs.uiuc.edu (Noritake Yonezawa) (06/25/91)
sthou@athena.mit.edu (Stewart T. Hou) writes: >I have a C routine which I call from LISP using the KCL C/LISP >interface. >It works on a Sun, but on my NeXTstation I found random() and srandom() >don't work (using the compiler that comes with the port). I tried your example on a SPARC, and then got same error messages. So, I don't think it's a AKCL/NeXT-specific problem. -- Noritake Yonezawa [yonezawa@cs.uiuc.edu] Department of Computer Science University of Illinois at Urbana-Champaign