This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: MESA


----- Original Message ----- 
From: "Igor Pechtchanski" <pechtcha at cs dot nyu dot edu>
To: "Mikael Åsberg" <mikas493 at student dot liu dot se>
Cc: <cygwin at cygwin dot com>
Sent: Wednesday, February 19, 2003 10:09 PM
Subject: Re: MESA


> On Wed, 19 Feb 2003, Mikael Åsberg wrote:
>
> > ----- Original Message -----
> > From: "Igor Pechtchanski" <pechtcha at cs dot nyu dot edu>
> >
> > > On Wed, 19 Feb 2003, Mikael sberg wrote:
> > >
> > > > ----- Original Message -----
> > > > From: "Igor Pechtchanski" <pechtcha at cs dot nyu dot edu>
> > > >
> > > > > On Wed, 19 Feb 2003, Mikael sberg wrote:
> > > > >
> > > > > > ----- Original Message -----
> > > > > > From: "Igor Pechtchanski" <pechtcha at cs dot nyu dot edu>
> > > > > > [snip]
> > > > > >
> > > > > > > Try "gcc -Wall -o test
test.c -L/usr/local/lib -lGL -lGLU -lglut",
> > > > > > > or something like that...
> > > > > > > Igor
> > > > > >
> > > > > > Thanks for the quick reply, here's what I tried:
> > > > > > $ gcc -Wall -o test test.c -L/usr/local/lib/GL -lGL -lGLU -lglut
> > > > >                                              ^^^
> > > > > >
> > /usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld:
> > > > > > cannot find -lGL
> > > > > > collect2: ld returned 1 exit status
> > > > > >
> > > > > > This is confusing to me, because I recalling reading that one
should
> > > > link
> > > > > > to -lGL etc. Any ideas?
> > > > >
> > > > > It works better if, after a -L, you specify a directory that
actually
> > > > > contains the relevant libraries (such as /usr/local/lib).
> > > > > Igor
> > > >
> > > > I just found that mistake, lol, and when I issued the following:
> > > > $ gcc -Wall -o test test.c -L/usr/local/lib -lGL -lGLU -lglut
> > > >
> > > > I get a massive amount of linking errors:
> > > > [snip]
> > > > collect2: ld returned 1 exit status
> > > > Very long, sorry =(
> > >
> > > You are most likely missing some X library (judging by the names of
the
> > > symbols).  Make sure you installed all the libraries MESA/glut
require.
> > > Check the order of the '-l' flags, too -- it matters.  You'll probably
> > > find some useful info in a README that came with MESA or OpenGL.
> > > Igor
> >
> > Someone using linux said I should try linking with these
> > x-libraries: -lXi -lXmu -lm -lXext -lX11, so I issued:
> > $ gcc -Wall -o test
> > test.c -L/usr/local/lib -lGL -lGLU -lglut -L/usr/X11R6/lib -lXi
> >  -lXmu -lm -lXext -lX11
> >
> > That yields a great number of errors (listed last).
> >
> > When I installed cygwin, I made sure I installed the X libraries. Maybe
I am
> > specifying the path wrong, or I should use other names, or I haven't
> > installed what I need (if I haven't done that, I wouldn't know what more
to
> > install =().
> >
> > Here are the errors:
> > /usr/local/lib/libglut.a(glut_event.o)(.text+0xef7): In function
`processEventsAndTimeouts':
> > /home/Administrator/Mesa-5.0/src-glut/glut_event.c:388: undefined
reference to `_glXWaitX'
> > [snip]
> > collect2: ld returned 1 exit status
>
> Looks like library order to me (I don't know OpenGL, so I wouldn't be able
> to provide the exact gcc command that will work).  Try using "nm" on the
> three GL libraries, and find out which defines the missing symbols.  Put
> that one last.  Repeat until linked successfully... :-)
> At this point I probably should let the OpenGL maintainer take over,
> anyway.  Good luck.
> Igor
> -- 
> http://cs.nyu.edu/~pechtcha/
>       |\      _,,,---,,_ pechtcha at cs dot nyu dot edu
> ZZZzz /,`.-'`'    -.  ;-;;,_ igor at watson dot ibm dot com
>      |,4-  ) )-,_. ,\ (  `'-' Igor Pechtchanski
>     '---''(_/--'  `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!
>
> Oh, boy, virtual memory! Now I'm gonna make myself a really *big* RAMdisk!
>   -- /usr/games/fortune
>
>

/usr/local/lib contains:
libGL.a   libGLU.a   libOSMesa.a   libglut.a
libGL.la  libGLU.la  libOSMesa.la  libglut.la

The first undefined reference is:
/usr/local/lib/libglut.a(glut_event.o)(.text+0xef7): In function
`processEventsAndTimeouts':
/home/Administrator/Mesa-5.0/src-glut/glut_event.c:388: undefined reference
to `
_glXWaitX'

so I tried:
nm /usr/local/lib/libGL.a | grep _glXWaitX, and it is in libGL.a. So the
ordering of the libraries is wrong? Tried changing, but haven't found
somethint that works yet.



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]