By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
455,538 Members | 1,293 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 455,538 IT Pros & Developers. It's quick & easy.

Building python 2.4.2 on linux with static pthreads

P: n/a

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_sigaction, 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"
************************************************** ********************

Nov 3 '05 #1
Share this question for a faster answer!
Share on Google+

This discussion thread is closed

Replies have been disabled for this discussion.