Cの関数をSBCLから呼んでみる

http://www.geocities.co.jp/SiliconValley-SanJose/7474/cmuclMemo.html#0001CMUCLでの例がある.
SBCLでもほとんど同じように出来る.
以下のようなCのソースファイルcall_c_from_sbcl.cがあって,

#include <stdio.h>

int call_c_from_sbcl(void){
    printf("Hello\n");
    return 10;
}

コンパイルして共有ライブラリにする.

$ gcc -shared -o call_c_from_sbcl.so call_c_from_sbcl.c

できたcall_c_from_sbcl.soをSBCLから読み込む.

CL-USER> (use-package "SB-ALIEN")
T
CL-USER> (use-package "SB-C-CALL")
T
CL-USER> (describe 'int)
INT is an external symbol in #<PACKAGE "SB-ALIEN">.
; No value
CL-USER> (load-shared-object "/home/wiz/program/cl/call_c_from_sbcl.so")
#P"/home/wiz/program/cl/call_c_from_sbcl.so"
CL-USER> (define-alien-routine "call_c_from_sbcl" int)
CALL-C-FROM-SBCL
CL-USER> (call-c-from-sbcl)
10

なぜかHelloが表示されていないんだけど,返値があればまあいいか.