Stephen Gran wrote:
That's what I was hoping you would say. Now for the tedious part - the tools (libtool, in particular) really doesn't seem to want to play when the .so you're linking to doesn't begin with lib*.
Arg...
Does anyone have any great ideas for how to make this work? How difficult would it be to change the name of the modules from rlm_* to librlm_* ? Or is there a better way I'm not seeing?
The problem is that libtool is getting in the way here. The dynamic linker can link to rlm_foo.so if you point to the file directly. The "lib" prefix requirement is there only for the common case. libtool, on the other hand... if you give it "/path/to/rlm/rlm_foo.la", it will often produce a link line saying "-L/path/to/rlm -lfoo", which is wrong. If you instead link to a library as "-lfoo", it will produce a link line of "/usr/lib/libfoo.so". I can't figure out why it does this. It's retarded.
Sorry - I didn't quite finish that thought. What I meant to say was that for the time being, we're stuck with either broken modules or using a bundled libltdl, neither of which is a great solution. It looks like libtdl upstream will make it possible to load the way we are again with the stock library, but that will mean code changes in freeradius as well.
What code changes?
So, given that either waiting or doing some work now means some changes, which seems like a better plan?
I'd rather see it fixed properly. Alan DeKok.