[desktop-discuss] Eye Candy for Solaris's Desktop - Compiz on Solaris x86

Erwann Chenede Erwann.Chenede at Sun.COM
Thu Mar 8 01:21:18 PST 2007


Hi Brian,

Brian Cameron wrote:

[...]
>>> 3) compizsettings does not compile with Sun Studio (although compiz 
>>> does
>>>    compile with it okay).  You might want to mention that you need to
>>>    make sure CC=gcc to build these.
>> This is false, with my patch for compiz-settings is compiling fine 
>> with Sun Studio.
>
> When I try to compile with Sun Studio I get this error:
>
> "/usr/include/gtk-2.0/gtk/gtktextbuffer.h", line 52: warning: enumerator
> value overflows INT_MAX (2147483647)
> "/usr/include/gtk-2.0/gtk/gtktextbuffer.h", line 53: warning: enumerator
> value overflows INT_MAX (2147483647)
> "/usr/include/gtk-2.0/gtk/gtktextbuffer.h", line 55: warning: enumerator
> value overflows INT_MAX (2147483647)
> "eggcellrendererkeys.c", line 497: warning: argument #6 is incompatible
> with prototype:
>         prototype: pointer to void :
> "/usr/include/glib-2.0/gobject/gsignal.h", line 221
>         argument : pointer to function(void) returning void
> "eggaccelerators.c", line 365: warning: enum type mismatch: op "="
> "eggaccelerators.c", line 581: warning: enum type mismatch: op "="
> "gconf-backend.c", line 199: syntax error before or at: {
> "gconf-backend.c", line 218: cannot recover from previous errors
> cc: acomp failed for main.c
> make[2]: *** [main.o] Error 2
> make[2]: Leaving directory
> `/export/home/brianca/compiz/compizsettings-trunk/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory
> `/export/home/brianca/compiz/compizsettings-trunk'
> make: *** [all] Error 2
>
> -- 
>
> Seems to be mad about the fact that the all_other_extensions_exist ()
> function being defined in another function.  Also the find_position
> and loop_through_active functions and entry_to_plugin_path in
> functions.c have the same problem.
Did my patch 
(http://www.gnome.org/%7Eerwannc/compiz/compiz-settings-solaris.2-3-7.diff) 
apply correctly
on your compiz-settings source ?
I've especially rewritten all the parts of the compiz-settings code that 
used nested functions within functions as it is not
supported by SunStudio.
>
> Maybe I'm using an old version of Sun Studio or something?  Do I need
> a patch to be able to compile code like this?  When I run "cc -V" I
> see:
>
> cc: Sun C 5.8 Patch 121016-02 2006/03/31
> usage: cc [ options] files.  Use 'cc -flags' for details
I'm using exactly the same compiler.

[...]
>>> 6) Usability problems (for me anyway)
>>>
>>>    - When I run thunderbird and click on the "Compose" button or
>>>      respond to an email, the window that pops up is black and has
>>>      nothing in it - the window that comes up is useless.  It's not
>>>      really possible for me to run compiz all the time if I can't
>>>      write emails when running with it.
>>
>> This might be bug in the nvidia driver. (I don't have that problem)
>> Try the latest driver.
>
> Upgrading the video driver didn't help.  I noticed the problem using
> thunderbird build 59, so I tried upgrading to thunderbird build 60 to
> see if that might help, but no luck.  I also tried running
> /usr/lib/thunderbird/thunderbird-bin from the command line to see if
> any useful error messages get echoed to the screen when the problem
> happens.  Unfortunately not.
>
> I only see this problem running compiz.  If I run thunderbird without
> running compiz, then it works fine.
>
> I do notice that when I run ldd /usr/lib/thunderbird/thunderbird-bin
> I see these lines:
>
>         libXrender.so.1 (RENDER_0.0) =>  (version not found)
>         libXrender.so.1 (RENDER_0.1) =>  (version not found)
>         libXrender.so.1 (RENDER_0.6) =>  (version not found)
>         libXrender.so.1 (RENDER_0.0) =>  (version not found)
>         libXrender.so.1 (RENDER_0.1) =>  (version not found)
>         libXrender.so.1 (RENDER_0.2) =>  (version not found)
>         libXrender.so.1 (RENDER_0.4) =>  (version not found)
>         libXrender.so.1 (RENDER_0.5) =>  (version not found)
>         libXrender.so.1 (RENDER_0.6) =>  (version not found)
>         libXrender.so.1 (RENDER_0.6) =>  (version not found)
>
> Do you see these also?  
Yes, I see that also.
Which hardware are you running compiz on ?
> Perhaps this is the problem?  I wonder if
> recompiling some base libraries might help.  You say you don't
> see this problem, so perhaps the issue goes away when using newer
> versions of Nevada than build 55?
I'll let you know as soon as I reinstall my machine with the latest 
solaris build.
>
>>>    - When I right click I get a neat zoom feature, but I can't seem
>>>      to get any right click menus, like the ones I often use when
>>>      using Thunderbird.  How do you get to the right-click menu?
>>
>> Use compiz-settings and disable the Zoom plugin
>
> Still this seems a serious usability issue to me.  All right click
> menus don't work if you turn this feature on?
>
> I'd think the feature shouldn't consume the mouse-click and allow the
> menu to pop-up even if it also causes a zoom.  Also would be nice if
> you could configure which mouse-button to use so you could use the
> one you want.
You can with compiz-settings by modifying the Action Bindings for the 
zoom plugin.
The default "initiate" binding is <Super>button 3. I believe that 
<Super>  (the window's key) isn't
parsed properly on Solaris for some reason.

[...]
>>>    - If you wanted compiz to run all the time without having to
>>>      "gtk-window-decorator --replace & compiz --replace gconf &"
>>>      all the time, how would you do so?  
>>
>> Add it to your session instead of metacity but although I've been 
>> running it for a week
>> on one of my machine I wouldn't advise it.
>
> Might be nice to mention this step in your blog in case people want
> to add it to their default session.
>
> I'm curious to hear why you wouldn't advise using compiz on a regular
> basis.  What bugs or problems make it bad idea to use?
Just because no packages are available, it's not been tested on Solaris 
at all.
And also, I'm still thinking at the best way to provide this feature 
(session integration) properly.

    HTH,

          Erwann

-- 
              Erwann Chénedé,
 Desktop Group, Sun Microsystems, Grenoble
[ I speak for myself, not for my employer ]





More information about the desktop-discuss mailing list