How can I repair the libraries on my system

Discussion in 'Command Line' started by ryanvade, Sep 2, 2012.

  1. ryanvade

    ryanvade Administrator Staff Member Staff Writer

    Messages:
    1,388
    Likes Received:
    454
    Trophy Points:
    83
    Hello everybody.
    I am having problems with program libraries on my system. Some don't seem to be located others not usable. I don't really know why. Here is the specific reasons why I think the libraries need fixed:

    Code:
    /usr/bin/ld: cuda_common.o: undefined reference to symbol '__gxx_personality_v0@@CXXABI_1.3'
    /usr/bin/ld: note: '__gxx_personality_v0@@CXXABI_1.3' is defined in DSO /lib64/libstdc++.so.6 so try adding it to the linker command line
    /lib64/libstdc++.so.6: could not read symbols: Invalid operation
    collect2: ld returned 1 exit status
    make[1]: *** [../run/john] Error 1
    make[1]: Leaving directory `/home/ryan/Hacking-tools/john-1.7.9-jumbo-6/src'
    make: *** [linux-x86-64-cuda] Error 2
    
    make all 
    Building target: deviceQuery
    Invoking: NVCC Linker
    nvcc -m64 -link -o  "deviceQuery"  ./src/deviceQuery.o   
    /usr/local/cuda/bin/../lib64/libcudart.so: undefined reference to `std::__detail::_List_node_base::_M_unhook()@GLIBCXX_3.4.15'
    /usr/local/cuda/bin/../lib64/libcudart.so: undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)@GLIBCXX_3.4.15'
    collect2: ld returned 1 exit status
    make: *** [deviceQuery] Error 1
    
    ./adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
    
    sudo ldconfig
    [sudo] password for ryan: 
    ldconfig: /lib64/libgnome-menu.so.2 is not an ELF file - it has the wrong magic bytes at the start.
    
    ldconfig: /lib64/libgnome-menu.so.2.4.13 is not an ELF file - it has the wrong magic bytes at the start.
    


  2. KenJackson

    KenJackson Active Member

    Messages:
    129
    Likes Received:
    28
    Trophy Points:
    28
    This command runs through all the rpms on your system and verifies their contents. But it sometimes reports lots of insignificant stuff, so you could add --nomtime. The nine dots and letters are explained in the VERIFY OPTIONS section of man rpm.
    Code:
    rpm -Va
    The Fedora Cuda page says to run this command to verify you have important libraries installed:
    Code:
    rpm --query --list xorg-x11-drv-nvidia-libs | grep -P '\.so(\.[123])?$'
  3. ryanvade

    ryanvade Administrator Staff Member Staff Writer

    Messages:
    1,388
    Likes Received:
    454
    Trophy Points:
    83
    thanks, can you give me more info?

    Thank you for your advice. I will try this out...
    Code:
    rpm -Va 
    returned some errors, how can I fix them?
  4. KenJackson

    KenJackson Active Member

    Messages:
    129
    Likes Received:
    28
    Trophy Points:
    28
    A lot of files get legitimately modified in some way during installation or operation, so I don't worry about them unless there's a problem. Though if you have an MD5 failure, "5", on an executable, that's probably cause for worry. If your think there's a problem with a package, you can do:
    yum reinstall <package>

Share This Page