On 28 May 2010 10:01, Piotr Pokora <[email protected]> wrote: > Hi! > >> Thanks for the attachments. I guess the problem is related to the >> binary relocation feature incorporated in Libgda (which allows one to >> compile and install with a prefix and the move the whole installation >> to another directory as is often done on Windows and MacOSX's >> bundles). > > Couldn't gda just search for these files in couple of directories? > > * current_directory/dtd > * set_by_env_directory/dtd > * home/.gda/dtd > * prefix/datadir/dtd
It could of course be done (looking into source directory could be a good option as it would allow execution without installation), but doing so also makes it harder when testing to see what is actually used... Anyway, the problem here is different for each architecture: * On Windows there is an API which tells you the full path of the library file (.dll), which is good * On Linux, the binreloc trick (libgda/binreloc/binreloc.[ch]) also does the trick * On MacOSX, the full path which can be obtained if the full patn of *executable* using the library (which is the reason there is a problem in the first place as here the executable is not installed in the same location as the library itself). * On other unixes, there is AFAIK no relocation possibility, but it's not really a problem since they don't provide tools which support relocation So the only real problem here is how to handle things on MacOSX's. I think the best is probably indeed to test several paths until one is found and return that one. This is what I'll do when Alexey confirms the current patch works as expected. Vivien _______________________________________________ gnome-db-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/gnome-db-list
