Where does Python look for libraries?

Robert Kern robert.kern at gmail.com
Mon Mar 27 16:26:29 EST 2006


Jesus Rivero - (Neurogeek) wrote:
> Python has sys.path
> If you want to add dirs into your PYTHONPATH add them to sys.path

The OP seems to be asking about C libraries dynamically linked to extension
modules, not Python libraries.

> ACB wrote:
>>>I have been trying to get the gdmodule installed and have run into
>>>an issue. When I import gd I get the following error.
>>>
>>>
>>>>>>import gd
>>>
>>>Traceback (most recent call last): File "<stdin>", line 1, in ?
>>>File "/usr/local/lib/python2.3/site-packages/gd.py", line 10, in ?
>>>import _gd ImportError: /usr/local/lib/libgd.so.2: Undefined symbol
>>>"libiconv_open"
>>>
>>>But, when I run nm libiconv.so in the directory with the iconv
>>>library I get an entry like this 00011fe0 T libiconv_open
>>>
>>>so I know the functionality is there. So, my question. Does
>>>python have a way to add search directories for locating libraries?

No. You will have to read your OS's documentation on how to make sure
libiconv.so is in a location your dynamic linker will look for shared libraries.
If you are on Linux, then probably

  $ man ld.so

will tell you the appropriate information.

-- 
Robert Kern
robert.kern at gmail.com

"I have come to believe that the whole world is an enigma, a harmless enigma
 that is made terrible by our own mad attempt to interpret it as though it had
 an underlying truth."
  -- Umberto Eco




More information about the Python-list mailing list