On Thu, Aug 19, 2010 at 4:52 PM, Programmingkid
<programmingkidx@gmail.com> wrote:I am trying to use the fword and feval functions in the file "kernel/forth.c". I know the header file for these functions are located in "include/libopenbios/bindings.h". I used this code to include the bindings.h file:#include "libopenbios/bindings.h"For some reason, I still see these errors:Building OpenBIOS for x86Building...error:?HOSTCC host/kernel/bootstrap.o?HOSTCC host/kernel/dict.o?HOSTCC host/kernel/primitives.o?HOSTCC host/kernel/stack.o?HOSTCC forthstraphost/kernel/primitives.o: In function `setupLocalDictionary':/home/user/Development/openbios-devel/obj-x86/../kernel/forth.c:1035: undefined reference to `_fword'/home/user/Development/openbios-devel/obj-x86/../kernel/forth.c:1037: undefined reference to `_fword'/home/user/Development/openbios-devel/obj-x86/../kernel/forth.c:1044: undefined reference to `feval'/home/user/Development/openbios-devel/obj-x86/../kernel/forth.c:1045: undefined reference to `feval'host/kernel/primitives.o: In function `loadLocalVariable':/home/user/Development/openbios-devel/obj-x86/../kernel/forth.c:1072: undefined reference to `feval'collect2: ld returned 1 exit statusmake[1]: *** [forthstrap] Error 1make[1]: Leaving directory `/home/user/Development/openbios-devel/obj-x86'make: *** [build] Error 1This is a simple function someone could use as an example to be used in the file forth.cstatic void test(void){? ? ? ?feval("banner");}Anyone know what I am doing wrong or how to solve this problem?
You are using the bootstrap compiler, which has only very limited set
of basic Forth words defined and actually even some of those will not
work during bootstrap time.
Full set of words like 'feval' is available when the library compiled
by bootstrap compiler is loaded into non-bootstrap kernel. Your
example should compile in arch/x86/openbios.c or arch/unix/unix.c.