Arthur <art...@mathbrane.ca> writes:

| Hi Gaby,
| 
| To start on developing some new functions in src/lib/sockio-c.c and
| expose them through your FFI mechanism I first tried a hello world
| example.  Copying what you had done for other socket functions I put
| a hello_world function in sockio-c.c, added a prototype to
| src/include/sockio.h, and imported it in src/interp/sys-os.boot as
| doHelloWorld.
| 
| When I build OpenAxiom from scratch this works so I can type
| doHelloWorld(0)$Lisp at the command prompt successfully.

Hi Arthur,

  Are you using GCL or SBCL?

| However when I make a change to hello_world in sockio-c.c and recompile
| no change shows up, in fact sockio-c.o is not recompiled.  When I delete
| sockio-c.o it is still not recompiled.  When I delete everything in
| <build-directory>/src/lib, except the Makefile, it is recompiled but
| there is still no effect.

Ouch, that must be a bug in the Makefile, I'll look into it.

| I tried similarly with src/interp/sys-os.boot forcing it to recompile
| but still no effect, i.e. after recompiling everything in src/lib and
| src/interp doHelloWorld(0)$Lisp at the command prompt is unchanged.
| 
| How can I develop new functions in sockio-c.c without having to do a
| rebuild from scratch for each change?

in experimental mode, the workflow with SBCL is different from that for
GCL: the latter forces recompilation of everything because it does not
understand dynamically linked libraries.  Working with SBCL usually
requires recompiling only the shared library.

-- Gaby

------------------------------------------------------------------------------
Join us December 9, 2009 for the Red Hat Virtual Experience,
a free event focused on virtualization and cloud computing. 
Attend in-depth sessions from your desk. Your couch. Anywhere.
http://p.sf.net/sfu/redhat-sfdev2dev
_______________________________________________
open-axiom-devel mailing list
open-axiom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel

Reply via email to