----- Original Message ----- 
From: "Chris Marshall" <[email protected]>

>
> OpenGLQ is just some PP optimized OpenGL with no platform dependencies.
> USE_POGL should have it take the build arguments from OpenGL::Config
> to generate a correct build file.  Without any further info I suggest
> two possibilites:
>
> (1) the WriteMakefile() code in PDL/Graphics/TriD/OpenGLQ/Makefile.PL
>     did not work on your platform
>
> (2) the arguments from OpenGL::Config are not correct or being integrated
>     correctly for your platform
>
> Or, both, I guess.

Yes, that's pretty much right.

As part of the way the the Win32 build of OpenGL caters for both MinGW and 
Visual Studio (and also caters for various EU::MM failings), 
$OpenGL::Config->{LIBS} is empty. Instead, the relevant linking information 
is in $OpenGL::Config->{LDFROM}:

'LDFROM' => '$(OBJECT) -lopengl32 -lglu32 -LFreeGLUT -lfreeglut',

(though I'm not too sure about the relevance of the '-LFreeGLUT' bit after 
OpenGL has been built).

In the OpenGLQ/Makefile.PL we can do, eg, either:

${$hash{LIBS}}[0] .= ' -lopengl32 -lglu32' if $^O eq 'MSWin32'; # Is 
portable ?
or
$hash{LDFROM} .= ' '. $OpenGL::Config->{LDFROM} if $^O eq 'MSWin32';

Both get around the problem, and OpenGLQ and POGL then build fine.

Prior to building PDL, I had moved the freeglut import library and headers 
from the OpenGL-0.58_005 source to a location where they would be found by 
default. (I expect this is a necessary step, but I haven't checked.)

The t/opengl.t tests fail with:

t/opengl.t .................. 1/4 Your vendor has not defined OpenGL macro 
StructureNotifyMask, used at 
C:\temp\temp\pdl\blib\lib/PDL/Graphics/OpenGL/Perl/OpenGL.pm line 154.

I guess this is expected.
Apart from the test failure, it's all looking good :-)

Cheers,
Rob 


_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to