shared library search path

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Stefan Arentz

    #1

    shared library search path


    Hi. I've wrapped a C++ class with Boost.Python and that works great. But, I
    am now packaging my application so that it can be distributed. The structure
    is basically this:

    .../bin/foo.py
    .../lib/foo.so
    .../lib/bar.py

    In foo.py I do the following:

    sys.path.append (os.path.dirnam e(sys.path[0]) + '/lib')

    and this allows foo.py to import bar. Great.

    But, the foo.so cannot be imported. The import only succeeds if I place
    foo.so next to foo.py in the bin directory.

    I searched through the 2.4.2 documentation on python.org but I can't find
    a proper explanation on how the shared library loader works.

    Does anyone understand what it going on here?

    S.

  • Neal Becker

    #2
    Re: shared library search path

    Stefan Arentz wrote:
    [color=blue]
    >
    > Hi. I've wrapped a C++ class with Boost.Python and that works great. But,
    > I am now packaging my application so that it can be distributed. The
    > structure is basically this:
    >
    > .../bin/foo.py
    > .../lib/foo.so
    > .../lib/bar.py
    >
    > In foo.py I do the following:
    >
    > sys.path.append (os.path.dirnam e(sys.path[0]) + '/lib')
    >
    > and this allows foo.py to import bar. Great.
    >
    > But, the foo.so cannot be imported. The import only succeeds if I place
    > foo.so next to foo.py in the bin directory.
    >
    > I searched through the 2.4.2 documentation on python.org but I can't find
    > a proper explanation on how the shared library loader works.
    >
    > Does anyone understand what it going on here?
    >
    > S.
    >[/color]

    No, but here is the code I use:
    import sys
    sys.path.append ('../wrap')


    Comment

    Working...