[Mesa-dev] OSMesa/libGL (was: Build failure since May 6)

tom fogal tfogal at alumni.unh.edu
Tue May 11 06:51:17 PDT 2010


Dan Nicholson <dbn.lists at gmail.com> writes:
> On Mon, May 10, 2010 at 6:54 PM, tom fogal <tfogal at alumni.unh.edu> wrote:
> > Dan Nicholson <dbn.lists at gmail.com> writes:
> >> On Mon, May 10, 2010 at 10:08 AM, Kevin H. Hobbs <hobbsk at ohiou.edu> wrote:
> >> > All I really want is Mesa with OSMesa from the development
> >> > repository as the "reference" library for my VTK and ParaView
> >> > nightly test builds.
> >>
> >> ./configure --with-driver=xlib ? That will link libOSMesa to
> >> libGL, but that's what configs/linux-x86-64 is already doing (I
> >> think). If that's not working for you, please let me know. I tried
> >> to make this work correctly in the past, but personally use the
> >> dri drivers.
> >
> > Doesn't look like it's happening at present:
[snip]
> > "MesaGL" is just Mesa's "GL"; we rename it to avoid
> > ambiguity.  Our configure line is:
>
> Well, it's OSMesa -> GL. But renaming GL -> MesaGL could cause a
> problem since the linker doesn't know you've done that. Have you
> considered overriding the name during the build so all the parts are
> aware of it? Something like "make GL_LIB=MesaGL".

Yeah, that's actually what we do.  After configure, but before make,
we:

    cat configs/autoconf | sed -e "s,GL_LIB = GL,GL_LIB=MesaGL,g" > \
      configs/autoconf.edit || return 1
    mv configs/autoconf.edit configs/autoconf
    cat configs/autoconf | sed -e "s,GLU_LIB = GLU,GLU_LIB=MesaGLU,g" > \
      configs/autoconf.edit || return 1
    mv configs/autoconf.edit configs/autoconf

The crazy way of doing it (i.e. not sed -i) is because AIX's sed is
garbage.

Anyway, the build does seem to know about this, AFAICT; we do it this
way specifically so that the gl.pc file will contain "-lMesaGL", i.e.
the correct library name.

> Kevin's post that default symbol visibility hidden breaks things
> might be a showstopper anyway.

Well, I would expect the symbol would be present but just not exported,
right? i.e. a lowercase `t' in nm instead of an uppercase one.

-tom


More information about the mesa-dev mailing list