Re: [AD] packaging trouble

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


On Fri, Jul 13, 2001 at 05:05:37PM +0200, Eduard Bloch wrote:
> Wait a moment, what if I don't want to use the assembly code at all?
> Then IMO I should not worry about non-PIC code, but according to lintian
> checks there is some non-PIC-code in the created library.

Indeed.

Even in the current system, the .so file should not contain PIC
code (that's why it's in the static library).  I've just done
the objdump test on my .so which does not contain assembler
code, and it gives a result too.

[Why oh why must dynamic linking and shared memory usage be one
and the same thing? :(  We only want dynamic linking (i.e.
shared library stored on disk), but we have to jump through
hoops to make the library also be shared when it's in memory.
For something like Allegro this really makes little sense...]

> objdump --headers --private-headers -T lib/unix/liballeg-3.9.37.so |grep rel.text
>   5 .rel.text     00000c08  00010770  00010770  00010770  2**2
> 00010770 l    d  .rel.text      00000000              

On my somewhat old 3.9.37 WIP, I get a similar result --
slightly smaller size though.

However, I've dumped the --full-contents too, and looking in my
editor (and guessing the format of the .rel.text chunk) I see:

    Contents of section .rel.text:
     1239c 5d660a00 02130600 71660a00 02140600  ]f......qf......

That is two entries, in little-endian.  The first entry is:

    000a665d (address of relocation) => 00061302 (dunno what this is)

The address lies within XF86DGAQueryExtension.  (The second
address seems to be in _mixer_exit.)  Looking on down the
relocation list, the second address (000a6671) is in
XF86DGAQueryVersion, the third is in XF86DGAGetVideoLL, and so
on.  I see a pattern emerging, but I'm not sure what it means --
these are not our functions, so they shouldn't be linked into
our library in such a way that they need relocating.  I'll keep
looking at this and see if I can tell what's going on (it looks
like we're linking a static DGA library into our dynamic
library).

One thing to try is disabling DGA, and seeing if it removes the
rel.text section (I'll do this shortly).

George

-- 
Random project update:
22/06/2000: AllegroGL documentation:  http://allegrogl.sourceforge.net/
        See under `Documentation' for the AllegroGL Reference Manual in
        various formats.



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/