• Prarit Bhargava's avatar
    tools/power/cpupower: Add 64 bit library detection · d4dbfa4b
    Prarit Bhargava authored
    The kernel-tools-lib rpm is installing the library to /usr/lib64, and not
    /usr/lib as the cpupower Makefile is doing in the kernel tree.  This
    resulted in a conflict between the two libraries.  After looking at how
    other tools installed libraries, and looking at the perf code in
    tools/perf it looks like installing to /usr/lib64 for 64-bit arches is the
    correct thing to do.
    
    Checks with 'ldd cpupower' on SLES, RHEL, Fedora, and Ubuntu result in
    the correct binary AFAICT:
    
    [root@testsystem cpupower]# ldd cpupower | grep cpupower
            libcpupower.so.0 => /lib64/libcpupower.so.0 (0x00007f1dab447000)
    
    Commit ac5a181d ("cpupower: Add cpuidle parts into library") added a
    new cpupower library version.  On Fedora, executing the cpupower binary
    then resulted in this error
    
    [root@testsystem cpupower]# ./cpupower monitor
    ./cpupower: symbol lookup error: ./cpupower: undefined symbol:
    get_cpu_topology
    
    64-bit libraries should be installed to /usr/lib64, and other libraries
    should be installed to /usr/lib.
    
    This code was taken from the perf Makefile.config which supports /usr/lib
    and /usr/lib64.
    Signed-off-by: default avatarPrarit Bhargava <prarit@redhat.com>
    Cc: Shuah Khan <shuahkh@osg.samsung.com>
    Signed-off-by: default avatarShuah Khan <shuahkh@osg.samsung.com>
    d4dbfa4b
Makefile 10.6 KB