Installation in the /usr/lib64 instead of /usr/lib on 64-bit systems with LSB

Issue #40 resolved
Peter Kovář created an issue

Destination directory for installation of the x265 libraries on 64-bit systems following Linux Standard Base specification should be ${CMAKE_INSTALL_PREFIX}/lib64 instead of ${CMAKE_INSTALL_PREFIX}/lib

Attached is the patch to cmake_install.cmake

Comments (11)

  1. djcj

    I think you actually have to fix that in one of the *.cmake.in or CMakeLists.txt files, because afaik the cmake files are generated from those. I had pointed that out in Issue #37 too. I think a libprefix option that can be set with the cmake configuration, like you can already do with the standard prefix, would be optimal.

    BTW I'm pretty sure the destination folder should be {prefix}/lib/{x86_64|i386}-linux-gnu. At least on Ubuntu that's the destination of many libs. I don't even have /usr/lib64 on my system.

  2. Peter Kovář reporter

    I agree that --libdir option would be needed.

    /usr/lib64 is destination of libraries on LSB 64-bit systems such as Red Hat, Fedora, OpenSUSE etc.

  3. Steve Borho

    cmake_install is machine generated, so the patch doesn't help much, but this is a relatively simple issue.

    I can add -DINSTALL_LIBDIR=lib/x86_64-linux-gnu

    Would you need to specify the bin folder as well?

  4. Peter Kovář reporter

    With the patch file I wanted to indicate what's needed to be modified.

    lib/x86_64-linux-gnu is installation directory on Ubuntu. I was thinking about automatic path generation derived from CMAKE_INSTALL_PREFIX and ABI

    On LSB systems it should be as follows:

    Install the project... -- Install configuration: "RelWithDebInfo" -- Installing: /usr/lib64/libx265.a -- Installing: /usr/include/x265.h -- Installing: /usr/include/x265_config.h -- Installing: /usr/lib64/libx265.so.0.8 -- Up-to-date: /usr/lib64/libx265.so.9 -- Up-to-date: /usr/lib64/libx265.so -- Installing: /usr/lib64/pkgconfig/x265.pc -- Installing: /usr/bin/x265

  5. Log in to comment