xforms-development
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XForms] New pre-release xforms-1.0.94pre30


From: Bill Unruh
Subject: Re: [XForms] New pre-release xforms-1.0.94pre30
Date: Fri, 13 Dec 2013 11:24:45 -0800 (PST)

On Fri, 13 Dec 2013, Jens Thoms Toerring wrote:

Hi Michal,

On Fri, Dec 13, 2013 at 03:46:14PM +0100, Michal Szymanski wrote:
This is rather minor problem and unlikely to be noticed by most of
users, unless working in heavily networked environment as I do.

'make install', normally run as root, apparently requires write
priviledges not only on destination directories (/usr/local/... by
default) but also in the source/build tree, where the 'make' is
usually done by ordinary user. If the latter is on a NFS-mounted
directory, it is quite probable that the local root has no write
access to it.

See attached make_install.log (from make -k install) - there are two
errors trying to rename `libflimage.so.2.1.1' to `libflimage.so.2.1.1U'
and `libformsGL.so.2.1.1' to `libformsGL.so.2.1.1U'
Both follow relinking libflimage.la and libformsGL.la which might not
be neccessary (maybe a leftover of 're-making' some of the stuff at
install stage which you mentioned in the previous email)

At the moment I can only try to explain why this happens, but
I don't have a solution yet:

During normal 'make' both libformsGL.so and libflimage.so created
obviously must depend on the newly created libforms.so (and not a
possibly already installed older version) in the users directory.
Otherwise it would be not possible to use them without a proper
install. Now, when they get installed, they must be modified to
use then newly installed /usr/local/lib/libforms.so. That looks
to me like the reason why libtools does the relinking.

Can you not put a line like
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH
(or the directory where the files are built rather than the . ) into the
Makefile script  so that the
current directory is searched first for the libraries, and the newly created
files are found first before anything on the system? When it is installed, one
would have /usr/local/lib in LD_LIBRARY_PATH, so the installed ones would be
used.
 (I do not really understand the problem so if my suggestion is way out,
please ignore it.)
Dynamically linked files surely should not depend on absolute paths. Ie, there 
should
be nothing in libformsGL.so to tell it where to find libforms.so-- that should
be up to the system and the system linker.


The programs fdesign, fd2ps and the demo programs are created in
a way that they depend on a libforms.so without a path, so they
actually don't work if one tries to start them directly - note
that these are the programs in ./lib subriectories, and e.g.
fdesign/fdesign is just a script that relinks the program
fdesign/.libs/fdesign and only then starts it. Thus they don't
need relinking. But this trick wouldn't work for libraries.

I've also re-installed an older version (from before I started
fiddling with build system) and also there the relinking hap-
pens, so this seems the problem is already a bit older.

Now, when libtools does the relinking it tries to put the newly
created library into the users directory before installing it.
And that's were the problem starts you encountered - if the root
account, doing the installation, has now write permission for
the users directories then there's trouble. Unfortunately, I
haven't yet found out if there's a way to instruct libtools to
write this inetermediate file somewhere else. But  it seems to
be a problem which others also seem to have encountered, so I
hope there's some solution - I just haven't found it yet...

                             Best regards, Jens


--
William G. Unruh   |  Canadian Institute for|     Tel: +1(604)822-3273
Physics&Astronomy  |     Advanced Research  |     Fax: +1(604)822-5324
UBC, Vancouver,BC  |   Program in Cosmology |     address@hidden
Canada V6T 1Z1     |      and Gravity       |  www.theory.physics.ubc.ca/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]