pkgsrc-Users archive

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

Re: lib64 issue on Linux (libexec vs. lib issue)

On Tue, May 29, 2012 at 1:49 AM, Jan Šmydke 
<> wrote:
> recently I experienced a problem on Linux amd64 that libraries were
> installed to "lib64" instead of "lib" directory. This was successfully
> resolved by setting "SET_LIBDIR=yes" (thanks to Aleksey Cheusov).

You solved the problem with one particular package by setting SET_LIBDIR=yes,
but I don't think this is a right way to go. SET_LIBDIR was introduced
this winter
by sbd@.

   date: 2012/01/26 06:33:43;  author: sbd;  state: Exp;  lines: +4 -1
   Add SET_LIBDIR variable which if non-empty will set GNU_CONFIGURE_LIBDIR to
   the default libdir (and there for be passed to ./configure), this is the
   best way to deal with the 'lib64' problem on x86_64-linux systems (with
   most some packages).

Its logic is as follows:

   if SET_LIBDIR is set; then
      CONFIGURE_ARGS += --libdir=${PREFIX}/lib

Nowadays most software is developped under Linux. As a result
more and programs become very "smart" and use lib64 directory for libraries
on 64-bit systems.
pkgsrc has already 45 packages with SET_LIBDIR and this number will
increase in the future.

I think much better solution for SET_LIBDIR would be

   if SET_LIBDIR != "no"; then
        CONFIGURE_ARGS += --libdir=${PREFIX}/lib

That is passing --libdir to "configure" by default.

Then, remove SET_LIBDIR=yes from NN packages and add SET_LIBDIR=no
to databases/iodbc (--libdir=${PREFIX}/lib/iodbc) and a few WIP packages.
Also, we'll be able to remove unnecessary CONFIGURE_ARGS+=--libdir=${PREFIX}/lib
(graphics/lensfun, devel/p5-Term-ReadLine and others). I had no time
to create a patch
but I hope idea is clear.

Potentially this change can break some packages, but I guess only
a few of them. Ideas?

Home | Main Index | Thread Index | Old Index