[cairo] standalone glitztest

Rogelio Serrano rogelio at smsglobal.net
Mon Jul 12 21:47:11 PDT 2004


On 2004-07-13 10:48:28 +0800 Jon Smirl <jonsmirl at yahoo.com> 
wrote:

> To run glitztest with miniglx:
> 
> 1) start sample server on a VT/window
> 2) switch to another window
> run glitztest
> 

I did but the call to XCreateWindow keeps on failing. I think 
its the call to create a drawable in the dri driver. I dont 
have the exact error message. Its in my pc at home. While 
tracing the code through gdb i got the idea of bypassing some 
things and call them directly from the glitz routines.

> Glitztest will dynamically like to glitz. glitz will 
> dynamically link
> to the miniglx libgl. This libgl uses direct rendering to draw 
> on the
> hardware but it need sample server to set things up.
> 
> glitz/glitztest should not be linked into sample_server. 
> sample_server
> is playing the role of xserver.

i see. so it opens a socket and pass the packets to the miniglx 
dispatch code. thats the code i was planning to bypass.

this leads me to a fundamental question. should the compositing 
code be in the server?

i thought that i can build myself some sort of graphics engine 
by merging glitz and sample_server or their derivatives into 
one server.

> 
> Here are the libraries a properly built glitztest needs:
> [jonsmirl at smirl glitztest]$ ldd glitztest
>         linux-gate.so.1 =>  (0xffffe000)
> this is from the glitz patch I sent you:
>         libglitz-miniglx.so.1 => 
> /usr/local/lib/libglitz-miniglx.so.1
> (0x4001d000)
> this is the miniglx version of libGL:
>         libGL.so.1 => /home/mesa/x/lib/libGL.so.1 (0x40023000)
>         libpthread.so.0 => /lib/tls/libpthread.so.0 
> (0x4faf0000)
> the common glitz lib:
>         libglitz.so.1 => /usr/local/lib/libglitz.so.1 
> (0x40073000)
>         libm.so.6 => /lib/tls/libm.so.6 (0x4f9d7000)
>         libpng12.so.0 => /usr/lib/libpng12.so.0 (0x00858000)
>         libGLU.so.1 => /home/mesa/x/lib/libGLU.so.1 
> (0x40080000)
>         libc.so.6 => /lib/tls/libc.so.6 (0x4f898000)
>         libexpat.so.0 => /usr/lib/libexpat.so.0 (0x00777000)
>         libdl.so.2 => /lib/libdl.so.2 (0x4f9fd000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x4f87a000)
>         libz.so.1 => /usr/lib/libz.so.1 (0x005ae000)
>         libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x4fed5000)
>         libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x4fbfb000)
> [jonsmirl at smirl glitztest]$
> 
> Sample server should look like this:
> [jonsmirl at smirl miniglx]$ ldd sample_server
>         linux-gate.so.1 =>  (0xffffe000)
>         libglut.so.3 => /home/mesa/x/lib/libglut.so.3 
> (0x40001000)
>         libGLU.so.1 => /home/mesa/x/lib/libGLU.so.1 
> (0x4001b000)
>         libGL.so.1 => /home/mesa/x/lib/libGL.so.1 (0x40091000)
>         libm.so.6 => /lib/tls/libm.so.6 (0x4f9d7000)
>         libpthread.so.0 => /lib/tls/libpthread.so.0 
> (0x4faf0000)
>         libc.so.6 => /lib/tls/libc.so.6 (0x4f898000)
>         libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x4fed5000)
>         libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x4fbfb000)
>         libexpat.so.0 => /usr/lib/libexpat.so.0 (0x00777000)
>         libdl.so.2 => /lib/libdl.so.2 (0x4f9fd000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x4f87a000)
> [jonsmirl at smirl miniglx]$
> 

i think i have a wrong understanding of the whole architecture. 
i can see that the server and glitztest use the same GL 
library.

> To check sample_server run it in a window/VT. Switch to 
> another VT and
> run miniglxtest. You should see some squares that change.
> 

Yes i got that running already.

> --- "Rogelio M.Serrano Jr." <rogelio at smsglobal.net> wrote:
>> I was able to build glitz and glitztest into sample_server. 
>> now im having 
>> doubts going further because i dont know how to make cairo
>> work with glitz in this case. Should a stub be made to do rpc 
>> style calls 
>> or stick cairo in there too.
>> 
>> 





More information about the cairo mailing list