From: hongseok.yoon@... Date: 2006-02-23T20:53:37+09:00 Subject: compiling c program using rb_eval_string() I tried to call rb_eval_string(), so I wrote simple C code. #include "/home/xopht/lib/1.8/i686-linux/ruby.h" int main() { rb_eval_string( "puts" ); return 0; } I compiled it and get bellow result. [xopht@odin ruby]$ g++ -o test test.cc -lruby-static -L/home/xopht/lib/ /home/xopht/lib//libruby-static.a(string.o)(.text+0x319a): In function `rb_str_crypt': /home/xopht/ruby/ruby-1.8.4/string.c:4360: undefined reference to `crypt' /home/xopht/lib//libruby-static.a(dln.o)(.text+0x9f): In function `dln_load': /home/xopht/ruby/ruby-1.8.4/dln.c:1351: undefined reference to `dlopen' /home/xopht/lib//libruby-static.a(dln.o)(.text+0xb6):/home/xopht/ruby/ruby-1.8.4/dln.c:1356: undefined reference to `dlsym' /home/xopht/lib//libruby-static.a(dln.o)(.text+0x12b):/home/xopht/ruby/ruby-1.8.4/dln.c:1359: undefined reference to `dlclose' /home/xopht/lib//libruby-static.a(dln.o)(.text+0x5): In function `dln_strerror': /home/xopht/ruby/ruby-1.8.4/dln.c:1193: undefined reference to `dlerror' collect2: ld returned 1 exit status [xopht@odin ruby]$ what's wrong?