What does version info in ldd -v mean?

前端 未结 1 1414
走了就别回头了
走了就别回头了 2021-01-06 18:17
Version information:
    /usr/lib/lapack/liblapack.so:
        libc.so.6 (GLIBC_2.14) => /lib/x86_64-linux-gnu/libc.so.6
        libc.so.6 (GLIBC_2.4) => /lib/         


        
相关标签:
1条回答
  • 2021-01-06 19:10

    What does that mean?

    It means that liblapack.so requires versioned symbols from libc.so.6 with versions GLIBC_2.2.5, GLIBC_2.4 and GLIBC_2.14. You can read about versioned symbols here.

    What version of libc.so.6 does this liblapack.so require?

    It requires 2.14 or newer. In general, GLIBC never removes symbols, only adds new ones, and so will still provide symbols versioned at GLIBC_2.2.5 even in the latest GLIBC-2.24.

    If it did ever remove such "old" versioned symbol, that would break any old binaries that depended on that symbol (which is why it's not done).

    How can I get liblapack.so's version?

    It doesn't look like liblapack.so itself is using any versioned symbols. You can look at your package manager to find out what version of liblapack.so you have. Something like:

    dpkg -S /usr/lib/lapack/liblapack.so
    liblapack-dev: /usr/lib/lapack/liblapack.so
    
    dpkg -l liblapack-dev
    ...
    ii  liblapack-dev  3.5.0-2ubuntu1  amd64 Library of linear algebra routines 3 - static version
    
    0 讨论(0)
提交回复
热议问题