Hello,

I'm trying to compile NekoVM with NEKO_STANDALONE flag to see how it behaves.

I created a .c file versatile_kernel.c (inspired from Xcross) which
implements neko_standalone_* functions:

------------ versatile_kernel.c BEGIN ---------------

#include <stdio.h>
#include "neko_vm.h"

extern void std_main();

void neko_standalone_init()
{
        std_main();
        
}

void neko_standalone_error(const char *error)
{
        fprintf(stderr, "Error: %s\n", error);
}


value neko_standalone_loader(char **argv , int argc)
{
        return neko_default_loader(argv, argc);
}

------------ versatile_kernel.c END ---------------


I also modified the following lines of the Makefile (inspired from Xcross):

---------------- Makefile BEGIN ----------------

CFLAGS = -Wall -O3 -fPIC -fomit-frame-pointer -I vm -D_GNU_SOURCE
-DNEKO_STANDALONE


VERSATILE_KERNEL_PORTS = vm/versatile_kernel.o ${STD_OBJECTS}
${LIBNEKO_OBJECTS} ${VM_OBJECTS}

test: createbin port compiler libs

port: ${VERSATILE_KERNEL_PORTS}
        ${CC} ${CFLAGS} ${EXTFLAGS} -o $@ ${VERSATILE_KERNEL_PORTS} 
${LIBNEKO_LIBS}
        mv port bin/neko


---------------- Makefile END ------------------


When I do:
make test

It ends with the message (when it comes to compiler rules) :
Uncaught exception - load.c(352) : Peimitive not found : s...@sprintf(2)

This is probably because I call std_main(); in neko_standalone_init().

Can someone tell if there is a special trick to build a standalone
version or what I did wrong?

Thanks in advance.

Konstantin Tcholokachvili


2010/8/29, Nicolas Cannasse <[email protected]>:
> Le 29/08/2010 23:48, Konstantin Tcholokachvili a écrit :
>> Hello,
>>
>> I modified the Makefile a little bit in order to add NEKO_STANDALONE
>> to CFLAGS but I have some compilation problems.
>
> Check the xcross Makefile :
>
> http://code.google.com/p/xcross/source/browse/trunk/Makefile.real
>
> Nicolas
>
> --
> Neko : One VM to run them all
> (http://nekovm.org)
>

--
Neko : One VM to run them all
(http://nekovm.org)

Reply via email to