[PPL-devel] static initialization interferes with OpenGL

Roberto Bagnara bagnara at cs.unipr.it
Sun May 11 17:36:05 CEST 2008


Manoj Rajagopalan wrote:
> I am guessing there is some static or extern declaration that clashes 
> with what is in NVIDIA's driver. I have emailed linux-bugs at nvidia.com 
> asking if I can email some their header files to you for you to see if 
> you can spot some clashing variables.

Dear Manoj,

OK, I can check the header files.

> BTW, I have the following nvidia packages installed on my Fedora 8 system:
> 
> kmod-nvidia-169.12-7.lvn8
> xorg-x11-drv-nvidia-devel-169.12-1.lvn8
> kmod-nvidia-2.6.24.5-85.fc8-169.12-7.lvn8
> kmod-nvidia-2.6.24.4-64.fc8-169.12-6.lvn8
> xorg-x11-drv-nvidia-libs-169.12-1.lvn8
> xorg-x11-drv-nvidia-169.12-1.lvn8

I don't have the NVIDIA packages installed.  Still, I have tried again
your program on Fedora 8 and nothing bad happens:

$ cat glversion.cpp
#include <ppl.hh>

extern "C" {
#include "GL/gl.h"
#include "GL/glut.h"
#include <stdio.h>
}

int main(int argc, char *argv[])
{
	glutInit(&argc, argv);
	glutCreateWindow("");
	printf("GL Version = %s\n", (char*)glGetString(GL_VERSION));
	return 0;
}


$ g++ -W -Wall -o glversion glversion.cpp -lglut -lppl
$ ldd glversion
	linux-gate.so.1 =>  (0x00110000)
	libglut.so.3 => /usr/lib/libglut.so.3 (0x00995000)
	libppl.so.6 => /usr/lib/libppl.so.6 (0x00699000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x04668000)
	libm.so.6 => /lib/libm.so.6 (0x00c58000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00a95000)
	libc.so.6 => /lib/libc.so.6 (0x00afd000)
	libGL.so.1 => /usr/lib/libGL.so.1 (0x02bb4000)
	libGLU.so.1 => /usr/lib/libGLU.so.1 (0x02c81000)
	libXext.so.6 => /usr/lib/libXext.so.6 (0x0020a000)
	libX11.so.6 => /usr/lib/libX11.so.6 (0x0021a000)
	libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0x00ab5000)
	libgmpxx.so.4 => /usr/lib/libgmpxx.so.4 (0x00693000)
	libgmp.so.3 => /usr/lib/libgmp.so.3 (0x007f1000)
	/lib/ld-linux.so.2 (0x00ade000)
	libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00a90000)
	libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00ad5000)
	libpthread.so.0 => /lib/libpthread.so.0 (0x00c8a000)
	libdl.so.2 => /lib/libdl.so.2 (0x00c83000)
	libdrm.so.2 => /usr/lib/libdrm.so.2 (0x00db4000)
	libXau.so.6 => /usr/lib/libXau.so.6 (0x00da7000)
	libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0x00aca000)
	libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00d7d000)
	libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00dac000)
$ rpm -qf /usr/lib/libppl.so.6
ppl-0.9-16.fc8
$ ./glversion
GL Version = 1.2 Mesa 7.0.3

All the best,

     Roberto

-- 
Prof. Roberto Bagnara
Computer Science Group
Department of Mathematics, University of Parma, Italy
http://www.cs.unipr.it/~bagnara/
mailto:bagnara at cs.unipr.it



More information about the PPL-devel mailing list