[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: configure level change on arm to build PIC until glibc-2.2?



Chris Gorman wrote:

> To fix apache from failing to load mod_auth_mysql.so, the library it's linked
> against, libmysqlclient.a, has to be rebuilt pic.  This is the same problem
> php3 suffers from and mod_auth_pgsql.so.  Specifically, the distance the PC
> needs to longjump to load a symbol is greater than the distance it can be told
> to longjump by the R_ARM_PC24 reloc.

Why on earth is a shared lib linking against a static lib?

We had this problem before with ORBit, which was building its shared libs from
static ones.  The solution was a pretty messy edit to configure.in and a
Makefile.am to recompile all objects -fPIC for the shared libs.  Sounds like this
may be required here too.

Scott Bambrough wrote:

> > 3)  I'm not aware of any problems that will be caused by having all
> objects
> > (and hence libraries) made position independent.
>
> Poorer code generated for static executables; useless register loads.
> Results in a performance penalty, larger code size.

This is why Debian policy requires shared objects to be built with -fPIC, static
without (section 4.2).  If something is not being built this way, a bug report
would be in order.

-Adam P.

Welcome to the best software in the world today café!




Reply to: