Hi Jeremy, Could the problem be fixed by linking statically your own copy of SQLite against the Amalgalite library, and perhaps passing all SQLite symbols to -unexported_symbols_list during ld time? I am guessing symbols wouldn't collide anymore this way.
>From what I understand, it looks like it would be better to fix the problem in Amalgalite itself, and not in each client requiring it. Laurent On Mon, Sep 12, 2011 at 8:39 PM, Jeremy Hinegardner <jer...@hinegardner.org> wrote: > Hey all, > > I develop the Amalgalite gem[1] and it ships with its own copy of SQLite. > It does this as it adds in additional compile-time features, and I try and > keep it as current as posssible. > > The problem is that since MacRuby is linked to CoreServices etc, the sqlite > library that ships with OSX gets linked at runtime before the sqlite library > that is built into the amalgalite gem extension. I've encountered this > before[2] with amalgalite, when it was loaded with my 'hitimes' gem (which on > osx links > against -framework CoreServes). > > I am wondering what the appropriate approach is here. I was able to fix this > in > MRI by compiling MRI with -twolevel_namespace and I think there is an open > ticket > with ruby-core to see if MRI on osx should be compiled with that flag. > > I attempted to compile MacRuby with -twolevel_namespace to resolve this, and I > was unsuccessful. There appeared to be other flags that conflicted with it. > > I would expect something like this may also affect the nokogiri gem as limxml2 > is also a system library on osx, and may conflict with the version that > nokogiri > expects. > > Thoughts? Opinions? I'm sure this is a rare case, Amalgalite may be the only > project that could experience an issue like this. What is the best way to > handle > this in the MacRuby ecosystem? > > enjoy, > > -jeremy > > [1] - https://github.com/copiousfreetime/amalgalite > [2] - > https://github.com/copiousfreetime/amalgalite/blob/master/lib/amalgalite/sqlite3/version.rb#L42-L56-54 > -- > ======================================================================== > Jeremy Hinegardner jer...@hinegardner.org > > _______________________________________________ > MacRuby-devel mailing list > MacRuby-devel@lists.macosforge.org > http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel > _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel