Forcing mkmf to use static libraries instead of dynamic ones

I’m building a C extension on Mac OS X and I notice that the Makefile
created by mkmf prefers dynamic libraries over static ones.

For example, given this line in my extconf.rb file:

have_library(‘antlr3c’, ‘antlr3ParserNew’)

And these installed libraries:

libantlr3c.a
libantlr3c.dylib
libantlr3c.la

The Makefile always choose s the “dylib” version… I can force it to
choose the static version and link statically to it by deleting or
moving the other libraries, but I’d like to know: is there a way to
explicitly specify my preference for the static version of the library
in my extconf.rb file?

Cheers,
Wincent

Hi,

At Sat, 9 Jun 2007 23:20:13 +0900,
Wincent C. wrote in [ruby-talk:254934]:

The Makefile always choose s the “dylib” version… I can force it to
choose the static version and link statically to it by deleting or
moving the other libraries, but I’d like to know: is there a way to
explicitly specify my preference for the static version of the library
in my extconf.rb file?

How can you tell your compiler and/or linker to use the static
version, even if the dylib version is also available?

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs