OpenGL, Ubuntu in einer VirtualBoxOpenGL, Ubuntu in a VirtualBox

<!--:de-->OpenGL, Ubuntu in einer VirtualBox<!--:--><!--:en-->OpenGL, Ubuntu in a VirtualBox<!--:-->

Achtung! Dieser Post ist veraltet: hier geht’s zum Update.

Ich habe vor langer Zeit aufgehört mit Dual-Boot-Systemen zu arbeiten und meine Art zu Arbeiten ist fest mit Windows und den dortigen Produkten verankert. Details und den dazugehörigen Glaubenskrieg zwischen Windows und Linux spare ich mir hier. Allerdings ist Linux ein System auf das ich durchaus auch nicht verzichten kann. Die augenblicklich beste Lösung für mich ist VirtualBox und der Betrieb eines virtualisierten Gast-Linux. Im gigantischen Distributions-Zoo hab ich mich recht einfallslos für Ubuntu entschieden. Als Computergraphiker und Visualisierung ist mir hierbei natürlich auch der OpenGL-Support in der Virtualisierung sehr willkommen. Diese Woche habe ich eine neue virtuelle Maschine aufgesetzt und wurde von folgendem Fehler heimgesucht der meine OpenGL-Anwendungen nicht starten lassen wollte:

libGL error: pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo

Erstaunlicherweise hat kurzes Googlen nicht viel gebracht. Lediglich auf einer Seite habe ich gelesen, dass es das Problem mit den GuestAdditions zusammenhängen könnte und man unbedingt darauf achten solle die aktuellste Version zu installieren. Logischerweise hatte ich aktuellste Version drauf.

Nach etwas mehr Googlen kam raus, dass das Problem im Zusammenhang mit sehr neuen OpenGL-Extensions existiert; Extensions zu neu für die virtuellen Treiber. Hier gibt es also scheinbar einen Konflikt zwischen dem was die virtualisierte Graphikkarte angibt welche Extensions sie beherrscht und damit was der Linux-Treiber daraus machen kann.

Tatsächlich konnte ich das Problem für mich lösen indem ich auf ältere Versionen der GuestAdditions zurückgegangen bin. Mit Version 4.3.12 läuft alles einwandfrei. Mit den neueren Versionen bis 4.3.18 nicht. Dies ist dann wohl ein Iso was ich mir auf der Platte behalte und abwarte ob neuere GuestAdditions oder Ubuntu-Updates das Problem in den Griff kriegen werden.Important! This post is outdated: here is the update.

Some time ago I stopped using dual-boot systems. My work takes place on Windows and is based on the products of that ecosystem. I will not go into details of the holy war between Windows and Linux. Especially since Linux is an integral part of my work as well. The solution currently working best for me is using a VirtualBox Linux installation. From the multitude of distributions I boringly selected Ubuntu for my use. As computer graphics and visualization researcher I obviously like the OpenGL support in the virtualization solutions. This week I set up a new virtual machine and was greeted by this error prohibiting my OpenGL applications to run:

libGL error: pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo

Surprisingly a short google search did not came up with a good solution. I only found some indications that the error is related to the VirtualBox guest additions and that one should always use the most recent ones. Of course I did use the most recent ones.

After some more searching I learned that the error is related to rather new OpenGL extensions. These extensions seem to be too new for the graphics drivers of the virtualization. There seems to be a conflict between the extensions the virtual graphics card reports supported and what the vritualization Linux graphics driver makes of it.

I was actually able to solve the error by downgrading my guest additions to an older version. Using version 4.3.12 everything works fine. With any newer version up to 4.3.18 I get that error. So the Iso image of that guest additions will stay on my hard drive. I will wait if newer version of the guest additions or updates of Ubuntu will be able to fix that problem for good.

1 Kommentar zu „OpenGL, Ubuntu in einer VirtualBoxOpenGL, Ubuntu in a VirtualBox

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.