Issue #5188 has been updated by Luis Lavena.

Status changed from Open to Feedback
Assignee set to Luis Lavena

Can you please try sqlite3 version 1.3.4?

The issue you're mentioning is something present in sqlite3-ruby 1.3.3 and that has been fixed in 1.3.4

----------------------------------------
Bug #5188: mkmf libpath order prevents use of custom libs
http://redmine.ruby-lang.org/issues/5188

Author: Brian Lindauer
Status: Feedback
Priority: Normal
Assignee: Luis Lavena
Category: 
Target version: 
ruby -v: ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]


The sqlite3 gem has an option --with-sqlite3-lib, which lets you point it to a non-default location for the libsqlite3.so file. However, mkmf still tries to use the default system libsqlite3.so even when this option is specified. I've tracked the behavior down to what I think is a bug in mkmf.rb.  The command it tries is

<pre>
gcc -o conftest -I/usr/include/ruby/ruby-1.9.1/x86_64-linux -I/usr/include/ruby/ruby-1.9.1/ruby/backward -I/usr/include/ruby/ruby-1.9.1 -I. -I../../../../../../../../../include -I/usr/local/include -I/opt/local/include -I/sw/local/include -I/usr/include    -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -mtune=generic -Wall -fno-strict-aliasing -fPIC conftest.c  -L. -L/usr/lib64 -L../../../../../../../../../lib -L/usr/local/lib -L/opt/local/lib -L/sw/local/lib -L/usr/lib -L.  -rdynamic -Wl,-export-dynamic     -lruby-static -lsqlite3  -lpthread -lrt -ldl -lcrypt -lm   -lc
</pre>

Note that -L/usr/lib64 comes before the path I specified in --with-sqlite3-lib. If you have a matching library in /usr/lib64, it will always use that instead of the one you have pointed to.

This behavior is implemented in the link_command method of mkmf.rb:

<pre><code class="ruby">
def link_command(ldflags, opt="", libpath=$DEFLIBPATH|$LIBPATH)
</code></pre>

I believe that, instead, this should be:


<pre><code class="ruby">
def link_command(ldflags, opt="", libpath=$LIBPATH|$DEFLIBPATH)
</code></pre>



-- 
http://redmine.ruby-lang.org