;msgpack-module.scm (module msgpack (;export pack pack-uint pack-sint pack-float pack-double pack-raw pack-array pack-map unpack raw->string/mapper) (import scheme chicken data-structures extras) (require-library srfi-69 byte-blob numbers) (include "msgpack.scm") ); end modulue ;msgpack.scm ;code using foreign C++ code ;makefile: csc -X bind -c++ -s -j msgpack msgpack-module.scm csc msgpack.import.scm -dynamic ;in csi: #;1> (import msgpack) ; loading ./msgpack.import.so ... ; loading /usr/lib/chicken/6/chicken.import.so ... ; loading /usr/lib/chicken/6/data-structures.import.so ... ; loading /usr/lib/chicken/6/extras.import.so ... ; loading /usr/lib/chicken/6/srfi-69.import.so ... ; loading /usr/lib/chicken/6/byte-blob.import.so ... ; loading /usr/lib/chicken/6/foreign.import.so ... ; loading /usr/lib/chicken/6/srfi-1.import.so ... ; loading /usr/lib/chicken/6/lolevel.import.so ... ; loading /usr/lib/chicken/6/posix.import.so ... ; loading /usr/lib/chicken/6/numbers.import.so ... ; loading /usr/lib/chicken/6/srfi-4.import.so ... ; loading /usr/lib/chicken/6/blob-set-int.import.so ... ; loading /usr/lib/chicken/6/type-checks.import.so ... ; loading /usr/lib/chicken/6/type-errors.import.so ... #;2> (use msgpack) ; loading ./msgpack.scm ... ; loading library srfi-69 ... ; loading /usr/lib/chicken/6/byte-blob.so ... ; loading /usr/lib/chicken/6/numbers.so ... ; including flonum-utils.scm ... ; loading library srfi-4 ... ; loading /usr/lib/chicken/6/blob-set-int.so ... ; loading /usr/lib/chicken/6/type-checks.so ... ; loading /usr/lib/chicken/6/type-errors.so ... Error: unbound variable: foreign-lambda*