python requires it.  any modules that are not PIC are not loadable by dlopen and will result in the following:

Can't modify ./'s text section. Use GCC option -fPIC for shared objects, please.

i don't know if this can be turned off, but for now i just need to make sure all python modules are PIC friendly.

would setting --disable-shared in python's make file remove the python requirement for PIC modules?

On Jul 26, 2006, at 7:19 AM, Dave Hylands wrote:

Hi Greg,

i was hoping to disable FORCE_SHAREABLE_TEXT_SEGMENTS in uclibc in order to
cross-compile some python modules.

does the gumstix linux absolutely require position independent code (PIC)?
i'm not looking to use assembly code (obviously).

I believe that the only a couple of portions of the kernel that have
to use position independent code (in the early boot) and that's coded
in assembly.

User mode code (which is what uses uClibc) shouldn't care. Loadable
modules and shared libraries use a linking stage to resolve symbols at
load time.

I think that the reason for enabling the option and using position
independent code is to reduce overall memory requirements. If program
A wants to load libfoo at address X, and program B wants to load
libfoo at address Y, then they can share the code pages if it's
compiled with position independent code.

I'm curious why the python modules would care?

Dave Hylands
Vancouver, BC, Canada

Take Surveys. Earn Cash. Influence the Future of IT
Join's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
gumstix-users mailing list