Building python 2.4.2 on linux with static pthreads

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Samuel M. Smith

    Building python 2.4.2 on linux with static pthreads


    I can build python 2.4.2 from source on the embedded linux box when I
    nfs mount and boot a full debian distribution.
    The embedded box also has stripped down linux distribution in onboard
    flash.
    My goal is to run python from the stripped down linux in onboard flash.

    I can successfully install python to the onboard flash when booted to
    the nfs version by using
    make install with $DESTDIR set to the onboard flash mounted directory

    I then reboot to the onboard flash and can run python from there.
    This works if I build python without threading support because the
    onboard flash does not include the
    libpthread.so library
    I need threading support for sockets etc.

    I believe that if I can build python with pthread linked statically
    then I should be able to run python when booted from the onboard
    flash without problem.

    Problem is I am clueless about how to do this. The setup and setup.py
    files only deal with building modules static
    or shared where as threading is build into the python interpreter it
    seems not as a module.

    I read the readme in the source distribution but can't find any
    configure options that will let me build
    python with static linking of the pthread library. I have searched
    google and find vague references to doing something
    like that. I don't understand the makefile well enough to know how to
    do it there.

    So does anyone understand how include threading support statically?
    What I have to modify to do it?

    When I tried to run python with shared threading support while booted
    from the onboard flash it got the following error

    ../python: error while loading shared libraries: libpthread.so.0 :
    cannot open shared object
    file: No such file or directory

    I naively copied the pthread library from the nfs version to the
    onboard flash version and rebooted and
    ran python. This time I got the following error

    /usr/local/bin/python: relocation error: /lib/libpthread.so.0 : symbol
    __libc_sigactio n, ve
    rsion GLIBC_2.2 not defined in file libc.so.6 with link time reference

    so apparently I can't just copy shared libraries around.

    An alternative solution would be to correctly copy the shared library?
    Any help comments would be appreciated

    Sam

    *************** *************** *************** *************** **********
    Samuel M. Smith Ph.D.
    2966 Fort Hill Road
    Eagle Mountain, Utah 84043
    801-768-2768 voice
    801-768-2769 fax
    *************** *************** *************** *************** **********
    "The greatest source of failure and unhappiness in the world is
    giving up what we want most for what we want at the moment"
    *************** *************** *************** *************** **********

Working...