只需要看一个例子都明白了。
% uname -a Linux bailey 1.2.13 #2 Wed Aug 28 16:29:41 GMT 1996 i586 % cat m1.c int power_of_2 (int x) { return 1<<x; } % cat m2.scm (c-declare "extern int power_of_2 ();") (define pow2 (c-lambda (int) int "power_of_2")) (define (twice x) (cons x x)) % cat m3.scm (write (map twice (map pow2 '(1 2 3 4)))) (newline) % gsc -c m2.scm # create m2.c (note: .scm is optional) % gsc -c m3.scm # create m3.c (note: .scm is optional) % gsc m2.c m3.c # create the incremental link file m3_.c % gcc m1.c m2.c m3.c m3_.c -lgambc % a.out ((2 . 2) (4 . 4) (8 . 8) (16 . 16))