Kon Lovett wrote:
On Jul 25, 2006, at 8:18 AM, Brandon J. Van Every wrote:
John Cowan wrote:
Brandon J. Van Every scripsit:
<snip>
I'm unfamiliar with LD_LIBRARY_PATH issues, being a Windows guy. The
CMake 2.4.2 documentation doesn't even mention it. It does talk about
RPATH, and there have been lotsa posts on the CMake list lately about
RPATH. Someone else will have to chase this one down, as unless Cygwin
imitates this stuff, I have no way of testing it and I don't really
want to learn it anyways. The CMake mailing list archives may be
useful. It has no inherent archive search, but you can do a Google
search on site:http://public.kitware.com/pipermail/cmake/
Is the install location of a linked library different from the
build location of that library? (Probably yes.) If the -L location of a
library linked to a chicken executable at build time changes at install
time then LD_LIBRARY_PATH will be necessary to find the library at the
installed location.
Possibly use '-rpath' which will set the eventual install
location of the library or add the pathname to the runtime library
search path of an executable.
(FYI: -rpath is a libtool arg for specifying the runtime path for a
library at link time. It sets the search path for a library or
executable. Looks like the CMake *_RPATH stuff is their mechanism for
passing this information on to the linker, and not a real environment
variable like LD_LIBRARY_PATH. '-R' is similar to -rpath but adds the
pathname to the library's dependecies, it doesn't say where the library
will actually be installed, as -rpath does.)
Sorry, I haven't been following the CMake discussion too closely
so forgive me if the above is well known by now.
If someone can do me the honor of looking up the relevant stuff in the
CMake archives, I'll implement it. I did Google the CMake archives,
but it took longer than my 10 minute pain threshold and I didn't find
anything definitively useful. Also there have been so many RPATH posts
in the past month that I'm confused about whether it even works
properly, not having followed the discussion at all.
Or just not install chicken into a shared area. Create a new one
where the user has permissions, like, say, $HOME. (Probably not what
most people want, but it is safe.)
I'm not in charge of where the user installs Chicken or what
permissions he gives it. I asked only for confirmation of my
suspicions, that CMake isn't doing anything wrong. It's been awhile
since I bothered with Unix permissions, so who knows, I thought maybe
it was me.
Cheers,
Brandon Van Every
|