From: Tristin Davis Date: 2008-07-07T02:26:52+09:00 Subject: Re: mkmf isn't finding my shared object to link with ------=_Part_16284_6243723.1215365425189 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Thanks Stefano, that worked. Now I get this though. LoadError: libmdc.so: cannot open shared object file: No such file or directory - ./metadata.so from ./metadata.so from (irb):1 I tried setting LD_LIBRARY_PATH to include the directory, but that didn't work. On Sun, Jul 6, 2008 at 12:12 PM, Stefano Crocco wrote: > On Sunday 06 July 2008, Tristin Davis wrote: > > I have an extension I wrote which is actually just a wrapper for a C api. > > The directory structure looks like this. > > . > > > > |-- Makefile > > |-- extconf.rb > > |-- extconf.rb~ > > |-- libmdc.so > > |-- mdc.h > > |-- metadata-backup.c~ > > |-- metadata.c > > |-- metadata.c~ > > |-- metadata.o > > |-- metadata.so > > > > `-- mkmf.log > > > > When I generate the makefile, it doesn't find libmdc.so. How can I fix > > this? > > > > require 'mkmf' > > > > have_header("mdc.h") > > have_library('libmdc.so','MDOpenConnection') > > > > dir_config('metadata') > > create_makefile('metadata') > > > > When I run it, I get > > > > checking for mdc.h... yes > > checking for MDOpenConnection() in -llibmdc.so... no > > creating Makefile > > I'm not sure, but I think you shouldn't put the lib prefix in the call to > have_library: > > have_library('mdc', 'MDOpenConnection') > > I hope this helps > > Stefano > > ------=_Part_16284_6243723.1215365425189--