Peculiar configure behavior

Randy Chung aoshi at OCF.Berkeley.EDU
Fri Aug 6 18:04:36 CEST 2004


edscott wrote:

 >
 > Not with libxfcegui4, but with xfce4-modules which is in the
 > libxfcegui4, but do not get added to the library. The modules just float
 > by themselves and are loaded/unloaded as gmodules. Both xfrun4 and xffm
 > use the gmodules which in turn use libxfce4util.  Since the modules are
 > not linked statically, you cannot tell them to link up with a specific
 > version of libxfce4util (or any other library). When you load one of the
 > gmodules the libraries it relies on are loaded via the /etc/ld.conf
 > path.


Runtime library paths can be specified to the linker; this is usually 
done by using the LDFLAGS environment variable.  The library paths which 
are specified there are used before /etc/ld.so.conf is searched.  Are 
there any other packages you know offhand that use xfce4-modules as 
well?  If other packages which also rely on linking xfce4-modules are 
linking properly, it seems almost certain that it's just a bug in the 
autogen scripts.

 > Before loading the module, neither xffm nor xfrun4 have required use of
 > libxfce4util, therefore it is not loaded. The first call for
 > libxfce4util lies in the module, but link information does not exist
 > here, being just an object file.
 >
 > That's my current theory. If I am right, the only solution is to install
 > a new version of libxfce4util. If I am wrong, I will be glad to see how
 > to make the modules work with a library not in the /etc/ld.conf path.


Just installing a new version of libxfce4util doesn't work, 
unfortunately :)  I have two versions installed, the 4.0.6 branch at 
/usr/lib, and the devel branch at /usr/local/xfce4/lib.  Installing a 
new version of libxfce4util would just lead to the same problem.  I 
could change the link in /usr/lib to point to /usr/local/xfce4/lib, but 
that'd lead to potential breakage in the stable tree I'm running. Adding 
/usr/local/xfce4/lib to ld.so.conf before /usr/lib is also not an option 
since it'd lead to the same situation.  The best thing to do in my case 
is simply to specify runtime library paths to the linker, which is what 
I'm doing.  The problem now is that the autogenerated makefiles for a 
few packages are breaking standard and not respecting the paths 
specified in environment variables (LDFLAGS, specifically).  The 
solution is to fix the way the makefiles are generated, since what I've 
been able to do is hand edit one of the autogenerated Makefiles (the one 
for xfrun, specifically) so that the linker uses the right library path 
(/usr/local/xfce4/lib) when it's doing it's dance in the compile 
process.  After installation, xfrun4 runs without a hitch.

 > As to xfcalendar, the reason is probably different.


I'm still tempted to believe that it's just a Makefile generation issue, 
but I'll have a better idea after I have time to look at this when I get 
back to the states (Monday), or while I'm on the plane.

 > regards,
 >
 > Edscott


Thanks for your attention to this :)  Hopefully we can figure it out and 
have a patch ready to be applied soon.

-- 

Randy



More information about the Xfce4-dev mailing list