[odb-users] odb-2.2.1 should install the odb.so plugin into $(gcc -print-file-name=plugin)

Boris Kolpackov boris at codesynthesis.com
Mon Mar 25 13:03:34 EDT 2013


Hi Hugo,

Hugo.Mildenberger at web.de <Hugo.Mildenberger at web.de> writes:

> It actually did not work that way. Without setting "--with-gcc-plugin-dir",
> the odb.so plugin was not installed in $(gcc --print-file-name=plugin) but
> somewhere below "/usr/libexec/odb" (if I remember the directory correctly).
> I've not yet looked further into the details, why that fails, because I 
> assumed it to be intended behaviour. Can you point me where to look 
> specifically?

If configure's libdir or libexecdir is a prefix of the GCC plugin 
directory (i.e., `gcc --print-file-name=plugin`), then ODB should
install there automatically. If that's the case but this doesn't
happen for you, then it is definitely a bug that I would like to
track down.

The test in question is in m4/gcc-plugin.m4, starts at line 63.


> This is why I think a separate package for the plugin would be a good
> idea.

Yes, as I said before, you would need to split the ODB compiler into
the driver package (/usr/bin/odb plus documentation) and plugin packages,
one for each version of GCC.


> I understood that the need to support several ODB versions in parallel 
> was your main concern within the context of this thread.

Nop, at this stage I am only concerned with supporting multiple version
of GCC (so that if the user switches the GCC version, ODB will still work).


> I'm a bit unsure which ODB related packages exactly would need to be 
> managed. Can you, e.g., sensibly use any database back-end library 
> with a more recent compiler driver?

Nop, we only guarantee things will work properly if the ODB compiler
driver and all the runtime libraries have exactly the same major and
minor version (i.e., X.Y in odb-X.Y.Z). Which means that to support
multiple ODB versions one would need to supports "switching" a lot
of libraries, headers, etc. I don't think this is worth the trouble
at this stage. Let's first get a single ODB version working from the
official repository.

Boris



More information about the odb-users mailing list