Forum: Platinen KiCAD: Could not create the main OpenGL context


von Linuxer (Gast)


Lesenswert?

Hi,
ich sitze an meinem ersten Board und beim Öffnen des Schaltplans erhalte 
ich immer eine Fehlermeldung "OpenGL Modus kann nicht benutzt werden, 
alternativ wird Software Rendering benutzt"
Und unter Details: "Could not create the main OpenGL context"
Wahrscheinlich ist das auch der Grund, warum die 3D-Ansicht des PCB 
nichts zeigt außer einer fenstergroßen Menüzeile... :(
Es tritt auf 2 Rechnern unter Linux auf. Auf einem Testrechner mit Win10 
läuft es prima, aber Win10 ist für mich aus persönlichen & technischen 
Gründen keine Alternative (aber das ist ein anderes Thema)

Kennt noch jemand das Problem und gar eine Lösung?

OS: Linux Mint
Linux version 4.10.0-38-generic (buildd@lgw01-amd64-059) (gcc version 
5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4) ) #42~16.04.1-Ubuntu SMP 
Tue Oct 10 16:32:20 UTC 2017
KiCAD: Version 5.1.4, release build (aus der Mint Paket-Verwaltung)
keine besondere Grafikkarte (nur Intel Onboard GPU)

Danke!

von Helmut S. (helmuts)


Lesenswert?

> keine besondere Grafikkarte (nur Intel Onboard GPU)

Welche denn?
Vielleicht kann die nur eine uralte Version von OpenGL oder überhaupt 
kein OpenGL.

Beitrag "Kicad und Grafikkarte"

: Bearbeitet durch User
von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Linuxer.

Linuxer schrieb:

> ich sitze an meinem ersten Board und beim Öffnen des Schaltplans erhalte
> ich immer eine Fehlermeldung "OpenGL Modus kann nicht benutzt werden,
> alternativ wird Software Rendering benutzt"

Hast Du OpenGL installiert? Unterstützt Deine Grafikkarte OpenGL?

Probier mal in Eeschema mit F12 in den Grafik Fallback Modus zu 
wechseln.

Alternativ Eeschema Pulldown Menue "Einstellungen" und dann "modernen 
Grafikmodus (Fallbacl)" wählen.


> Und unter Details: "Could not create the main OpenGL context"
> Wahrscheinlich ist das auch der Grund, warum die 3D-Ansicht des PCB
> nichts zeigt außer einer fenstergroßen Menüzeile... :(


> Kennt noch jemand das Problem und gar eine Lösung?

Siehe oben. Ich hatte einen alten Laptop, dessen Grafikchip kein OpenGL 
unterstützt.....
Es gibt auch Grafikkarten mit fehlerhafter OpenGL implementierung.....


> KiCAD: Version 5.1.4, release build (aus der Mint Paket-Verwaltung)
> keine besondere Grafikkarte (nur Intel Onboard GPU)

Hier KiCAD: Version 5.1.5 (Vorher auch Version 5.1.4) unter Debian 10 
(Buster) mit Xfce (4.12). Keine Probleme!

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

: Bearbeitet durch User
von Georg A. (georga)


Lesenswert?

Es gibt das Tool glxinfo (unter Ubuntu im mesa-utils-Package), das 
diverse Infos zur GLX-Unterstützung (=GL für X) liefert. Bzw. sagt, dass 
GLX nicht da ist ;)

Normalerweise können auch schon ältere Intel-GPUs GLX, aber es braucht 
dafür einerseits das i915-Kernelmodul (und nicht irgendeinen anonymen 
Framebufferkram) und auch für den X-Server die Extension libglx.so. Je 
nach Art der X-Konfiguration (kenne Mint nicht) sollte das automatisch 
dann eingebunden werden oder (wenn man noch eine Xorg.conf 
zusammenbasteln muss) muss das glx in der Modules-Section stehen. Es ist 
gut möglich, dass das alles in Extra-Paketen steckt, und man daher im 
Normalfall ein laufendes X aber ohne GLX hat.

Im Notfall gäbe es auch noch eine SW-Emulation (mesagl), aber dazu 
müsste der Grafikchip schon seeehr alt sein.

: Bearbeitet durch User
von Linuxer (Gast)


Lesenswert?

Hi,
danke für die Antworten. Auf die Schnelle mal erste Erkenntnisse (habe 
bislang noch GAR NICHTS am System geändert, also nur Aufnahme des Status 
Quo):

- F12 bringt nichts, weil er beim Öffnen nach der Fehlermeldung direkt 
in den Modus springt. F11 reproduziert wieder die Fehlermeldung.
- libglx ist vorhanden
./usr/lib/xorg/modules/extensions/libglx.so
- glxinfo bringt ewig lange Ausgabe. Hier nur mal der Anfang:
1
name of display: :0
2
display: :0  screen: 0
3
direct rendering: Yes
4
server glx vendor string: SGI
5
server glx version string: 1.4
6
server glx extensions:
7
    GLX_ARB_create_context, GLX_ARB_create_context_profile, 
8
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float, 
9
    GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample, 
10
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile, 
11
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB, 
12
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, 
13
    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
14
    GLX_OML_swap_method, GLX_SGIS_multisample, GLX_SGIX_fbconfig, 
15
    GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, GLX_SGI_swap_control
16
client glx vendor string: Mesa Project and SGI
17
client glx version string: 1.4
Dieser Rechner ist ein ~4-5 Jahre alter i7. Alter geschätzt, da ich den 
günstig als ausrangierten Firmen-Rechner bekam. Der andere Rechner ist 
ein Celeron Baujahr 2009. Alt, aber funzt immer noch tadellos.

Ich probiere weiter... Wobei das wohl eher eine Beschäftigung für's 
Wochenende wird. Hobby halt :(

Danke schon mal! :)

von Martin H. (horo)


Lesenswert?

Vielleicht hilf Dir, was ich vor einiger Zeit in einem anderen Kontext 
herausgefunden hatte, ich kopier's einfach hier rein:


Hi, unfortunately mesa, the OpenGL implementation for linux is very 
conservative in what it reports as its version. Even the latest version 
in testing (18.3.2) reports on my Lenovo T400:
1
$ glxinfo | grep OpenGL
2
...
3
OpenGL version string: 2.1 Mesa 18.3.2
4
OpenGL shading language version string: 1.20
5
...
even if it is able to deliver 4.5 functionality.
But you have the possibility to tweak this behaviour with some 
environment value magic, have a look at 
https://www.mesa3d.org/envvars.html
1
$ MESA_GL_VERSION_OVERRIDE=3.2 MESA_GLSL_VERSION_OVERRIDE=150 glxinfo | grep OpenGL
2
...
3
OpenGL version string: 3.2 (Compatibility Profile) Mesa 18.3.2
4
OpenGL shading language version string: 1.50
5
...

von 2⁵ (Gast)


Lesenswert?

Mach mal:
glxinfo | grep DRI
oder
glxinfo | grep Intel

und zeig uns die Ausgabe

von Linuxer (Gast)


Lesenswert?

2⁵ schrieb:
> Mach mal:
> glxinfo | grep DRI
> oder
> glxinfo | grep Intel
>
> und zeig uns die Ausgabe
1
$ glxinfo | grep DRI
2
Device: Mesa DRI Intel(R) Ivybridge Desktop  (0x162)
3
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Desktop 
4
5
$ glxinfo | grep Intel
6
Vendor: Intel Open Source Technology Center (0x8086)
7
Device: Mesa DRI Intel(R) Ivybridge Desktop  (0x162)
8
OpenGL vendor string: Intel Open Source Technology Center
9
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Desktop

von holm (Gast)


Lesenswert?

Ich hatte gerade den Fall das trotz funktionierendem OpenGL ..OpenGL 
nicht mehr mit KiCAD funktionierte...seit etwa April.
Ich habe das auf Launchpad.net angesprochen und einen Bugreport 
aufgemacht, die Ursache war das der KiCad Shader Code zu komplex für die 
Fähigkeiten der Nvidia Quadro 4500FX geworden war, der JIT Compiler 
brauch immer mit einer Fehlermeldung auf Zeile 602 ab...

https://bugs.launchpad.net/kicad/+bug/1853756

..das wird hier nicht das Problem sein, ich habe indessen eine andere 
Graka eingebaut ob wohl die Quadro sonst meinen Ansprüchen vollauf 
genügte.
Der Nivida Treiber ist auch seit 2017 nicht mehr gewartet worden, 
möglicherweise hatte der auch nur einen Bug.

Gruß,
Holm

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.