Hi Brad,
Here are the steps to reproduce the error I am getting. This is the structure of the sample project folder:
myapp --> core ----> a.scm ----> b.scm --> myapp.scm
The contents of the scheme files are:
```` ;; core/a.scm (define (fa) "hello from a")
;; core/b.scm (define (fb) "hello from b")
;; myapp.scm (display (fa)) (newline) (display (fb)) (newline) ````
I build an executable like this:
```` $ gsc -o myapp -exe ./core/*.scm myapp.scm $ ./myapp
=> hello from a => hello from b ````
All is fine. Now I try to bundle core as a static library:
```` $ gsc -c -o ./core/b.c ./core/b.scm $ gsc -c -o ./core/a.c ./core/a.scm $ gsc -link -flat -o ./core/ab.c ./core/*.c $ gsc -obj -o ./core/ab.o ./core/ab.c $ ar -rc ab.a ./core/ab.o ````
I link the library while building the app:
```` $ gsc -o myapp -ld-options "ab.a" -exe myapp.scm *** WARNING -- "fa" is not defined, *** referenced in: ("/Users/me/myapp/app.c") *** WARNING -- "fb" is not defined, *** referenced in: ("/Users/me/myapp/app.c") ````
Now if I run `./myapp` it gives me this error:
```` $ ./myapp *** ERROR IN | app| -- Operator is not a PROCEDURE (#!unbound) ````
So what am I doing wrong?
Thanks,
--Vijay
On Tue, Mar 8, 2016 at 1:00 AM, Bradley Lucier lucier@math.purdue.edu wrote:
Personally, I don't have enough information yet to offer help.
Perhaps you could show us a transcript of your session with the commands you gave and the errors you observed.
Or perhaps you could try to imitate the commands in the makefiles in lib/ gsi/ and gsc/ to make
find . -name '*.a' ./gsi/libgambitgsi.a ./gsc/libgambitgsc.a ./lib/libgambit.a
after following the build instructions on github:
https://github.com/feeley/gambit
Brad