From: Brad Date: 2003-12-03T09:07:06+09:00 Subject: Re: Embedding Ruby in C What's the compile command line look like? Seems to me that you're trying to link without telling the compiler where the implementation of ruby_init(), etc. are located. You need to find out what the name of the shared library (or static library, which ever you prefer) for your operating system (For example, on a Linux system the library might be ruby.so or ruby.lib, I don't know what it's actually called :) ) and link that file to your program. e.g. Suppose the library is actually ruby.so Suppose you're using cc for c compiles cc out.c -lruby.so Hope this helps! Sorry I couldn't be more accurate. Regards, Brad Ron Coutts wrote: > > Here is what i get: > > > > Compiling... > > out.c > > Linking... > > out.obj : error LNK2001: unresolved external symbol _ruby_init > > out.obj : error LNK2001: unresolved external symbol _ruby_finalize > > out.obj : error LNK2001: unresolved external symbol _rb_eval_string > > Debug/out.exe : fatal error LNK1120: 3 unresolved externals > > Error executing link.exe. > > > > out.exe - 4 error(s), 0 warning(s) > > > > Any ideas? Thanks, > > Isn't this just a C linker error? I've never embedded ruby myself, but > it seems there's a missing lib file containing the object code for > functions ruby_init, ruby_finalize and rb_eval_string. > > Ron > >