From: Stefano Crocco Date: 2008-07-07T02:12:00+09:00 Subject: Re: mkmf isn't finding my shared object to link with 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