[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Connection C-KCL (Bug)
|
| Guilherme Bittencourt writes:
| ------------------------------------------------
| Other system calls like "exit", "read", "dup2", do work but "fork"
| is not alone in the "unworking" group "creat", "link", and (surprisingly)
| "dup" do not work either. And, most interesting, in my earlier version of
| KCL this bug doesn't occur !
| I'll be very happy if some one could explain me this behavior, it
| is very important to the connection of other systems (in my case Reduce and
| Prolog) to KCL.
| ------------------------------------------------
|
| David Linn answers :
| ------------------------------------------------
| You don't specify your environment but I would guess it's BSD-derived
| based on the system calls specified and the error message from the
| linker.
|
| The only system calls that you can make in a normal KCL executable are
| those made either directly or indirectly by the C coded kernel,
| raw_kcl. This is because the library code for the uncalled routines is
| not linked in from the C library when the executable raw_kcl is built.
| The (load) function does not allow you to link in any more library
| routines; you need to use (si:faslink) to get the other system calls.
| Try (help 'si:faslink).
| ------------------------------------------------
And it was exactly that ! I just make :
(si:faslink "ltest.o" "ctest.o -lc")
And it works "comme sur des roulettes" (a french expression meaning
perfectly well).
Thank you very much David.
Guilherme BITTENCOURT +-----+ gb@lifia.imag.fr
L.I.F.I.A. | <0> |
46, Avenue Felix Viallet +-----+
38031 GRENOBLE Cedex - FRANCE (33) 76574668