librelist archives

« back to archive

Re: [ottawaandroid] Question for developers under Linux

Re: [ottawaandroid] Question for developers under Linux

From:
Jean-Francois Messier
Date:
2012-11-22 @ 15:46
[Re-sending in plain text]

I have several Linux workstations installed as VMs, those are using
Ubuntu 12.10, or 12.04. AS they are also remote from my main station, I
use NX to have a remote desktop. But I now have a problem starting the
Android virtual device. I get error messages that are about some missing
graphic device or something like that. 

Starting emulator for AVD 'Gbread'
WARNING: Application calling GLX 1.3 function "glXCreatePbuffer" when
GLX 1.3 is not supported!  This is an application bug!
X Error of failed request:  GLXUnsupportedPrivateRequest
  Major opcode of failed request:  147 (GLX)
  Minor opcode of failed request:  16 (X_GLXVendorPrivate)
  Serial number of failed request:  20
  Current serial number in output stream:  22

Any idea what's going on ? What can I do to fix that ? Is this related
to this new desktop for Ubuntu ? I tried with another distri that does
not use Unity, and I have similar error messages. 

Thanks :-)

JF
---
Linux: Le droit de choisir
Linux: The right to choose

Re: [ottawaandroid] Question for developers under Linux

From:
Michael Richardson
Date:
2012-11-22 @ 17:38
So, you have connected with NX, which is a low bandwith version of X.
It appears that NX is reporting to the Android QEMU that GL is
supported, but really, NX doesn't do that.  You can run the Android
emulator through ssh X forwarding, but it's very slow to start, and
the result is mostly unuseable as emulator/QEMU draws pixels.

The best result you will get is to run Xvnc on your virtual machine,
and connect to it.  So, for instance, run "xvncserver" and provide
a passwod, and it starts Xvnc on port 5900.  Start the emulator
in that window, and the result is mostly good... 

The reason that VNC does better is because the client machine determines
how often to pull pixels, so if Android writes a lot of pixels, the VNC
can skip frames if the bandwidth isn't high enough.
(NX tries to do a lot of this too, but it works differently)

EXCEPT, the android emulator makes an assumption about RGB vs GRB
packing of pixels. Rather than asking the X server, it assumes RGB
(which most physical video cards do).  The result is that blue and red
may be swapped for you.

I've run lots of Android development via VNC, in part because eclipse
was too slow on my old laptop, but also because I wanted a continous
integration machine.

With two monitors on my desk, I actually have run two VNC: one for
Eclipse, and one for the emulator.  eclipse over X (never tried NX) was
awful because of the excessive rendering that eclipse does.  
I did this with two VNCs, because having one huge VNC was less fun.

-- 
]       He who is tired of Weird Al is tired of life!           |  firewalls  [
]   Michael Richardson, Sandelman Software Works, Ottawa, ON    |net architect[
] mcr@sandelman.ottawa.on.ca http://www.sandelman.ottawa.on.ca/ |device driver[
   Kyoto Plus: watch the video <http://www.youtube.com/watch?v=kzx1ycLXQSE>
	               then sign the petition. 

Re: [ottawaandroid] Question for developers under Linux

From:
Jean-Francois Messier
Date:
2012-11-22 @ 17:43
Interesting. I will have to see how I use VNC. I never used it before,
and at this point, I would only need it when running/testing my app.
Otherwise, NX works just great. I have high bandwidth between my main
workstation and the virtual Ubuntus that I run.

JF
---
Linux: Le droit de choisir
Linux: The right to choose


-------- Original Message --------
Subject: Re: [ottawaandroid] Question for developers under Linux
From: Michael Richardson <mcr@sandelman.ca>
Date: Thu, November 22, 2012 12:38 pm
To: ottawaandroid@librelist.com


So, you have connected with NX, which is a low bandwith version of X.
It appears that NX is reporting to the Android QEMU that GL is
supported, but really, NX doesn't do that. You can run the Android
emulator through ssh X forwarding, but it's very slow to start, and
the result is mostly unuseable as emulator/QEMU draws pixels.

The best result you will get is to run Xvnc on your virtual machine,
and connect to it. So, for instance, run "xvncserver" and provide
a passwod, and it starts Xvnc on port 5900. Start the emulator
in that window, and the result is mostly good... 

The reason that VNC does better is because the client machine determines
how often to pull pixels, so if Android writes a lot of pixels, the VNC
can skip frames if the bandwidth isn't high enough.
(NX tries to do a lot of this too, but it works differently)

EXCEPT, the android emulator makes an assumption about RGB vs GRB
packing of pixels. Rather than asking the X server, it assumes RGB
(which most physical video cards do). The result is that blue and red
may be swapped for you.

I've run lots of Android development via VNC, in part because eclipse
was too slow on my old laptop, but also because I wanted a continous
integration machine.

With two monitors on my desk, I actually have run two VNC: one for
Eclipse, and one for the emulator. eclipse over X (never tried NX) was
awful because of the excessive rendering that eclipse does. 
I did this with two VNCs, because having one huge VNC was less fun.

-- 
] He who is tired of Weird Al is tired of life! | firewalls [
] Michael Richardson, Sandelman Software Works, Ottawa, ON |net
architect[
] mcr@sandelman.ottawa.on.ca http://www.sandelman.ottawa.on.ca/ |device
driver[
 Kyoto Plus: watch the video
<http://www.youtube.com/watch?v=kzx1ycLXQSE>
 then sign the petition.

Re: [ottawaandroid] Question for developers under Linux

From:
Jean-Francois Messier
Date:
2012-11-22 @ 15:54
Does that mean that I have to get a newer version of the NX
Client/Server package ? I use the latest stable version that they
provide. Should I go with the newest one that is still under Beta (for
years now.....) ? Or do you have better idea on how to do remote desktop
with Ubuntu 12.10 ? 

Thanks :-)

JF
---
Linux: Le droit de choisir
Linux: The right to choose


-------- Original Message --------
Subject: Re: [ottawaandroid] Question for developers under Linux
From: John Stewart <alex.stewart@crc.ca>
Date: Thu, November 22, 2012 10:49 am
To: ottawaandroid@librelist.com

Jean-Francois;

You need more modern version of OpenGL than what the over-the-wire
protocols give.

JohnS.


> 
> 
> Starting emulator for AVD 'Gbread'
> WARNING: Application calling GLX 1.3 function "glXCreatePbuffer" when
> GLX 1.3 is not supported! This is an application bug!
> X Error of failed request: GLXUnsupportedPrivateRequest
> Major opcode of failed request: 147 (GLX)
> Minor opcode of failed request: 16 (X_GLXVendorPrivate)
> Serial number of failed request: 20
> Current serial number in output stream: 22
> 
> Any idea what's going on ? What can I do to fix that ? Is this related
> to this new desktop for Ubuntu ? I tried with another distri that does
> not use Unity, and I have similar error messages.

Re: [ottawaandroid] Question for developers under Linux

From:
John Stewart
Date:
2012-11-22 @ 16:04
JF - 

> Does that mean that I have to get a newer version of the NX
> Client/Server package ? I use the latest stable version that they
> provide. Should I go with the newest one that is still under Beta (for
> years now.....) ? Or do you have better idea on how to do remote desktop
> with Ubuntu 12.10 ? 


Unknown. 

My OpenGL and OpenCL work requires tight integration between cpu and gpu, 
so have not tried any remote window/desktop stuff @work in a few years.

Also, have 1 development machine @home for Android which is Ubuntu 12.10, 
one machine, no need to remote desktop it.

That you are having difficulties does not surprise me; OpenGL is going 
through a real change in that 90% of it is being thrown out, 10 % 
retained, and 20% more new stuff thrown into the mix. (Desktop OpenGL-3.x 
and 4.x; mobile GL-ES 2.0)

Not much help, I know… I assume you did not find any answers via Google?


JohnS.



Re: [ottawaandroid] Question for developers under Linux

From:
Jean-Francois Messier
Date:
2012-11-22 @ 16:10
No, so far, all I could see was to use VNC, which did not work well for
me. I am considering trying another distro, but I am not sure whether
this would work. I want to start with Android development, and for now,
I cannot have an emulator that works, so the only way I could try my
little programs / samples I have would be to compile the APK, and
manually feed it to my actual device. 

JF
---
Linux: Le droit de choisir
Linux: The right to choose


-------- Original Message --------
Subject: Re: [ottawaandroid] Question for developers under Linux
From: John Stewart <alex.stewart@crc.ca>
Date: Thu, November 22, 2012 11:04 am
To: ottawaandroid@librelist.com

JF - 

> Does that mean that I have to get a newer version of the NX
> Client/Server package ? I use the latest stable version that they
> provide. Should I go with the newest one that is still under Beta (for
> years now.....) ? Or do you have better idea on how to do remote desktop
> with Ubuntu 12.10 ? 


Unknown. 

My OpenGL and OpenCL work requires tight integration between cpu and
gpu, so have not tried any remote window/desktop stuff @work in a few
years.

Also, have 1 development machine @home for Android which is Ubuntu
12.10, one machine, no need to remote desktop it.

That you are having difficulties does not surprise me; OpenGL is going
through a real change in that 90% of it is being thrown out, 10 %
retained, and 20% more new stuff thrown into the mix. (Desktop
OpenGL-3.x and 4.x; mobile GL-ES 2.0)

Not much help, I know… I assume you did not find any answers via
Google?


JohnS.

Re: [ottawaandroid] Question for developers under Linux

From:
Antoine Grondin
Date:
2012-11-22 @ 17:40
I think it has to do with the VM you use that do not support recent OpenGL
versions.  Changing your distro, in that case, will not change the outcome
as it's the VM who emulates the GPU and define which version of OpenGL is
supported.  I would say, use a metal machine or look for another VM
software that offers more recent OpenGL emulation.

Cheers,

--
Antoine Grondin
*
*

*Live long and prosper*




On Thu, Nov 22, 2012 at 11:10 AM, Jean-Francois Messier <jf@messier.ca>wrote:

> / samples

Re: [ottawaandroid] Question for developers under Linux

From:
John Stewart
Date:
2012-11-22 @ 15:49
Jean-Francois;

You need more modern version of OpenGL than what the over-the-wire protocols give.

JohnS.


> 
> 
> Starting emulator for AVD 'Gbread'
> WARNING: Application calling GLX 1.3 function "glXCreatePbuffer" when
> GLX 1.3 is not supported!  This is an application bug!
> X Error of failed request:  GLXUnsupportedPrivateRequest
>  Major opcode of failed request:  147 (GLX)
>  Minor opcode of failed request:  16 (X_GLXVendorPrivate)
>  Serial number of failed request:  20
>  Current serial number in output stream:  22
> 
> Any idea what's going on ? What can I do to fix that ? Is this related
> to this new desktop for Ubuntu ? I tried with another distri that does
> not use Unity, and I have similar error messages. 




Re: [ottawaandroid] Question for developers under Linux

From:
Jean-Francois Messier
Date:
2012-11-22 @ 17:45
Actually, I have the same issue on a virtual machine and on a physical
machine. The physical one is a not-so-bad machine, as this is an old ESx
server, on which I installed Ubuntu, and everything seems to work,
except this emulator.

JF
---
Linux: Le droit de choisir
Linux: The right to choose



-------- Original Message --------
Subject: Re: [ottawaandroid] Question for developers under Linux
From: Antoine Grondin <antoinegrondin@gmail.com>
Date: Thu, November 22, 2012 12:40 pm
To: ottawaandroid@librelist.com

I think it has to do with the VM you use that do not support recent
OpenGL versions.  Changing your distro, in that case, will not change
the outcome as it's the VM who emulates the GPU and define which version
of OpenGL is supported.  I would say, use a metal machine or look for
another VM software that offers more recent OpenGL emulation.
 

Cheers, 


--
Antoine Grondin

 Live long and prosper
 

On Thu, Nov 22, 2012 at 11:10 AM, Jean-Francois Messier <jf@messier.ca>
wrote:
 / samples

Re: [ottawaandroid] Question for developers under Linux

From:
Antoine Grondin
Date:
2012-11-22 @ 17:49
Yeah, I think Michael has the right answer.

Cheers,

--
Antoine Grondin
*
*

*Live long and prosper*