A library is a collection of functionality that programs can use. They can be dynamically loaded by a program, or they may be compiled into the program.

learn more… | top users | synonyms

31
votes
2answers
3k views

Why are shared libraries executable?

Why have almost all the shared libraries in /usr/lib/ have the executable permission bit set? I don't see any use case for executing them. Some do manage to hook-up some form of main function to print ...
21
votes
2answers
9k views

What is the difference between .a and .so file?

As far as I understand they are libraries, but what is the difference between the two?
12
votes
1answer
842 views

Loading of shared libraries and RAM usage

I'm wondering about the way Linux manages shared libraries. (actually I'm talking about Maemo Fremantle, a Debian-based distro released in 2009 running on 256MB RAM). Let's assume we have two ...
11
votes
1answer
364 views

Is there an easy method for installing binary builds of glibc?

Time and time again I see questions such as these: GLIBCXX 3.4.15 on Centos 6 CentOS 4.8 and glibc 2.5 And these are the types of solutions we're typically pushing: how to run new software ...
10
votes
1answer
6k views

What does libgcc_s.so contain?

I tried running objdump on the lib to figure it out without success. Is there a way to find out what a library does?
9
votes
2answers
1k views

strace for library calls

I know of strace, which is super handy for watching system calls. Is there an equivalent that can trace calls to external libraries? For example, I'm trying to debug some SSLeay misbehavior with a ...
9
votes
1answer
775 views

How does gcc know where boost is installed

I installed boost using sudo apt-get install on Ubuntu. Later I did not have to give gcc the I flag alongwith the path to the boost libraries to use boost ! Nor did I do any pkg-config --cflags --libs ...
8
votes
1answer
307 views

Finding the library versions a library was linked against

I have a library that was compiled on an unknown Ubuntu machine, And I'd like to determine what version of Ubuntu that machine had at the compile time. My idea was to try and find the versions of ...
7
votes
1answer
4k views

Where did /usr/lib64 go and what is /usr/lib/x86_64-linux-gnu?

I have two Ubuntu-x86_64 systems. One is version 10.04, the other 12.04 and there is a difference in the structure of the lib directories. This doesn't surprise me, but I'm curious if anyone knows ...
7
votes
2answers
3k views

Changing linked library for a given executable (CentOs 6)

I have an executable linked like this: $ ldd a.out libboost_system-mt.so.1.47.0 => /usr/lib64/libboost_system-mt.so.1.47.0 (0x00007f4881f56000) libssl.so.10 => ...
7
votes
1answer
241 views

ELF shared libraries - motivation for the PLT

Could self-modifying code be used to speed up function calling in dynamically linked libraries? As far as I understand it, ELF shared libraries use a kind of indirect jump table (the procedure ...
7
votes
1answer
446 views

What files should I copy from Windows into Wine?

As far as I understand Wine runtime does better if some libraries are copied from MS Windows, but some Windows system libraries really are not to be used with Wine (some can even make it stop working, ...
6
votes
1answer
238 views

Executing a shared library

Some shared libraries provide an output when called from the command line as if they were executables. For example: $ /lib/libc.so.6 GNU C Library stable release version 2.13, by Roland McGrath et ...
5
votes
4answers
2k views

What is the difference between a Library call and a System call in Linux?

I would like to know what is the difference between a Library call and a System call in Linux. Any pointers for a good understanding of the concepts behind both will be greatly appreciated.
5
votes
3answers
3k views

Difference between system calls and library functions

I have been through the answer of this question but do not quite understand the difference between system calls and library functions. Conceptually, what is the difference between the two?
5
votes
4answers
7k views

ldd tells me my app is “not a dynamic executable”

I have a 32-bit application (called uclsyn) I received from an astronomy professor. I managed to get it running on CentOS a year ago, but now when I am setting up a new CentOS VM, it won't run and I ...
5
votes
2answers
7k views

Viewing Linux Library / Executable version info

In Windows, EXE and DLL have version info, including at least the following fields: file version product version internal name product name copyright In Linux Library / Executable: Which fields ...
5
votes
1answer
23k views

gcc can't link to pthread?

I have recently installed XUbuntu 11.10 64bit, but I am having problem compiling the most simple pthread example. Here is the code pthread_simple.c: #include <stdio.h> #include ...
5
votes
2answers
585 views

How to check if libfftw3_threads.so.3.2.4 shared library was compiled for pthreads or for OpenMP?

There is FFTW library installed by an administrator system-wide, in /usr/lib64, and it includes /usr/lib64/libfftw3_threads.so.3.2.4. When I compiled this library myself, before it was installed by ...
5
votes
2answers
7k views

error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory

anisha@linux-y3pi:~/> google-earth ./googleearth-bin: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory anisha@linux-y3pi:~/> locate ...
4
votes
2answers
249 views

Compiling old solaris programs under Linux

I've got sources for a program developed under Solaris in ANSI-C. I am told it was developed around 1996-1997. I'm currently struggling with compiling it under a current Ubuntu. I got pretty far and I ...
4
votes
4answers
2k views

Install development files locally to build on system without root access?

There is a server that I do work on, running an older version of Linux. I don't have root access to the system, so I wanted to build a more recent version of a tool that I use a lot (Vim 7.3). I ...
4
votes
2answers
179 views

Is there a way to determine what packages or libraries should be loaded to support an executable?

There is an executable I want to install on a computer that I can't recompile that wasn't built as a package, and I want to download the libraries it requires to run them. Below is part of the output ...
4
votes
2answers
8k views

How to export LD_LIBRARY_PATH to all users and system services

I want to export LD_LIBRARY_PATH to system services and all users. System services are run before login, so .bashrc is not applicable. How to achieve this?
4
votes
1answer
3k views

Difference between lib, lib32, lib64, libx32, and libexec

My 64 bit Ubuntu 13.04 system has the following directories in /: lib lib32 lib64 libx32 libexec In the /usr directory there is: lib lib32 libx32 libexec This seemed like something that could be ...
4
votes
2answers
4k views

Use shared libraries in /usr/local/lib

I have build some libraries from sources, and the files after make install are in /usr/local/lib For example, in my case I have the file libodb-2.2.so which is in this directory. However when I ...
4
votes
1answer
3k views

Running a statically linked binary with a different glibc

I have a statically linked binary for a tool that I'm trying to run on RHLE4. The tool complains about glibc. It needs 2.4 and the one in the system is 2.3. Here is the message that it spits out: ...
4
votes
1answer
1k views

Using Atlas from scipy

I installed Ubuntu 12.04 64 bit. I need to work with python and scipy, I installed them and when I run the test: python -c "import scipy; scipy.test()" I get the message: ImportError: ...
4
votes
2answers
72 views

Identifying running programs that are using the old version of a library I just replaced

After installing updates to address CVE-2014-0160 (the OpenSSL Heartbleed bug), I had to take care to restart anything that might be using libssl -- many services, such as Apache and my VPN software, ...
4
votes
1answer
162 views

Will GNOME and GTK libs bloat up my KDE?

I want to use Shutter. I installed it previously under Kubuntu and it needed a lot of libs. What bothered me most was that Kubuntu wanted me to restart, that is rare for OS's nowadays and in general ...
4
votes
1answer
831 views

How do I get a list of shared library filenames under Linux?

Is there a GNU Linux built-in for getting a list of the filenames of shared libraries? I have considered parsing the output of ldconfig -p. However, I'm not sure about consistency in output from ...
4
votes
1answer
772 views

EGLIBC vs GLIBC on laptops

From what I understand the primary cause of fork/branch of EGLIBC as compared to GLIBC was the problem with patches for ARM that Debian devs wanted to push upstream. I have slightly different ...
4
votes
1answer
65 views

How does multilib work?

In older distributions there was the ia32-libs meta package, now both Debian and Ubuntu switched to multilib. I wonder what the differences are and what I'm supposed to do to re-create a 32 bit ...
4
votes
1answer
458 views

Can I use a chroot on my dev machine to build an application to run on embedded linux installation?

I am trying to develop an application to run on an embedded linux installation. It comes with an older version of libc than I have on my development maching. If I were to create a chroot environment ...
4
votes
2answers
876 views

libssl and libcrypto backward compatible?

I have an old server application that requires libssl.so.0.9.6 and libcrypto.so.0.9.6. My issue is I currently have libssl.so.1.0.0a and libcrypto.so.1.0.0a on my system. I tried symlinking to the ...
3
votes
2answers
915 views

Stereo “tone-generator” for linux?

Is there something like a stereo (separate left-and right-channel) tone-generator for Linux? Where you can set volume and tone/pitch for each channel, and preferably also set the wave-form (sine, ...
3
votes
2answers
2k views

Why does LD keep outputting “no version information available”

On every loading of a lib, I get the error: no version information available This lib has been compiled on another PC (ubuntu 10.04) than the one running it (mandriva 2010.2). $ ldd ...
3
votes
2answers
63 views

How do I know which library and man page will be found first?

With binaries, I can always do which foo to know which binary I am invoking with $ foo, but what about man pages? Is there a way to know the path of the man page will be loaded by default? Similarly, ...
3
votes
2answers
684 views

Confusion about linking boost library while compilation

For a client I needed to add boost 1.54 to the system. So I downloaded the latest version (1.55) and built it within a special directory: /usr/local/lib/boost1.55/. This works. Then I had to adapt the ...
3
votes
2answers
740 views

/etc/ld.so.conf doesn't contain /usr/lib

I am using pkg-config to help supply the correct libs during c++ compilation. As I understand it, it searches in directories supplied by /etc/ld.so.conf. My ld.so.conf references the following lib ...
3
votes
1answer
141 views

Which library are LO headers belonging to?

I'm trying to configure liquidsoap and compile it from source. The ./configure process gets stuck at this point: checking lo/lo.h usability... no checking lo/lo.h presence... no checking for ...
3
votes
3answers
11k views

startx error when setting up X server on archlinux

I am trying to install X on my archlinux home desktop. I get this error when trying to start it (startx/xinit): [root@computer ~]# startx xauth: file /root/.Xauthority does not exist xauth: file ...
3
votes
2answers
32 views

added new library, old one hanging around

In ubuntu 12.04, I downloaded the source for a geospatial library, gdal-1.11.0, into ~/src, configured it and compiled it successfully, it seemed. New files such as libgdal.a got put into ...
3
votes
2answers
679 views

Package installation and dependancies - how to prevent installation of existing libraries?

I'm a relatively new Ubuntu server user, so I'm learning as I go. I have an issue with a software package I'm installing (QGIS) which has several dependancies one of them being gdal library. ...
3
votes
1answer
636 views

libstdc++.so.3 => not found on CloudLinux, no SuperUser permissions, seemingly in chroot.

I am trying to install the Linux x64 BOINC command-line interface client on a CloudLinux machine with x86_64 Architecture. When I try to run the executable I get an error: ./boinc: error while ...
3
votes
1answer
836 views

Proper management of ld.so.conf and shared libraries

I'm curious as to how other Linux admins manage /etc/ld.so.conf and in general, shared libraries across multiple Linux servers. We have about 30-40 Linux servers running SLES 11. Since they are ...
3
votes
2answers
50 views

How To Convert .run Installer to .deb Installer?

I'm running Ubuntu 14.04. I have many 3rd party system libraries which I use for projects, but managing library installation is difficult. Some libraries are .deb files, some are built from source ...
3
votes
1answer
23 views

How to configure my enviorment in such a way that a proper (different from the system one) version of library is used

I guess that this question is a borderline between ServerFault and StackOverflow and this site. But I think that U&L is most relevant. I have some C++ code that depends on a library in version X ...
3
votes
1answer
527 views

Linux From Scratch: libgmp.la, libmpfr.la, and libmpc.la not found during version-check

I'm trying to build a Linux From Scratch system on my host Linux Mint machine. However, when I run the version-check.sh file, it returns that my system is missing libgmp.la, libmpfr.la, and libmpc.la, ...
3
votes
1answer
348 views

How do I get rid of unnecessary mp3 tags in my music library?

I have a massive bunch of music. Some of the tracks have unnecessary MP3 flags. How can I get rid of them?