Firebird - status update (not ready yet)

Lionel Elie Mamane lionel at mamane.lu
Fri Aug 12 20:03:43 UTC 2016


Hi,

On MacOS X, "install path" is kindof the reverse of "rpath".

On GNU/Linux, when A loads B with dlopen() (that is at runtime), then
the rpath of A is used to search for B.

On MacOS X, when A is dynamically linked with B (that is at build
time), the "install path" of B is recorded into A (more precisely,
into the result of linking A with B), so that at runtime (link before
the executable is run, not dlopen()), B is searched for B's "install
path".

So they are kind of opposite concepts, and not in the same case: one
for dlopen(), the other for dynamic linking. Runtime vs build time.

On Fri, Aug 12, 2016 at 08:53:47PM +0200, Bunth Tamás wrote:
> Hi,
> 
> Still working on firebird 3.0 upgrade:
> https://gerrit.libreoffice.org/27642/
> 
> On MAC, I got an error during creating a fb database
> (isc_create_database) that Firebird cannot connect to localhost.[1]
> 
> The reason is probably that fbclient library searches for Engine12 in
> a wrong path or with a wrong name (so the loopback provider is the
> next provider, which tries to connect through localhost ).
> 
> I printed out the string that is passed to dlopen in
> src/common/os/darwin/modloader.cpp, it's "libEngine12.dylib" which is
> good I think.
> 
> I wonder why CppunitTest_dbaccess_firebird_test succeeds, because
> there is an "isc_create_database" too.
> 
> I don't see through how macosx-change-install-names works, but I tried
> to use it to create rpath, see changes of patch set 14.
> 
> Tamás Bunth
> 
> [1] http://pastebin.com/7jS7LmnW
> 


More information about the LibreOffice mailing list