グラフィックカードのドライバーでOpenGL 4.5をサポートする必要があります。また、Mesaが実際に実行できることを知っている限りは。glxinfo
は私にこれを与えます:
$ glxinfo | grep "OpenGL"
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile
OpenGL core profile version string: 3.3 (Core Profile) Mesa 13.0.6
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 13.0.6
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.1 Mesa 13.0.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
OpenGL ES profile extensions:
つまり、これはOpenGL 3.0のみを実行できるということです。だから私はそれを更新しようとしましたが、私はいくつかの問題に遭遇しました:
apt
を使用して更新しようとした場合、つまりSudo apt-get upgrade libgl1-mesa-dri -t testing
、 これは壊れています:
$ Sudo apt-get upgrade libgl1-mesa-dri -t testing
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libsnmp30 : Depends: libsensors4 (>= 1:3.0.0) but it is not going to be installed
mesa-va-drivers : Depends: libsensors4 (>= 1:3.0.0) but it is not going to be installed
mesa-va-drivers:i386 : Depends: libsensors4:i386 (>= 1:3.0.0) but it is not going to be installed
E: Broken packages
さて、しかし:
$ apt-cache policy libsensors4
libsensors4:
Installed: 1:3.4.0-4
Candidate: 1:3.4.0-4
Version table:
*** 1:3.4.0-4 900
900 http://ftp.ru.debian.org/debian stretch/main AMD64 Packages
100 /var/lib/dpkg/status
したがって、それはlibバージョン> = 1:3.0.0に依存しますが、私はバージョン1:3.4.0-4を持っています。これは本当に奇妙です。
一般に、Mesaをどのようにアップグレードすればよいかわかりません。 apt
を使用している場合、どのパッケージを更新すればよいかわかりません。ソースからの場合、それがapt
とどのように相互作用し、アップデートによって元に戻されないかはわかりません。
私はDebian 9 Stretchを使用していますが、私のグラフィックカードはIntel HD Graphics 5000です。
安定版に直接テストをインストールしようとしないでください!または FrankenDebian (せいぜい)になるか、非現実的な依存関係のために多くのパッケージが失われます。
良いニュースは、これらの更新されたパッケージ 利用可能stretch-backports
です。 Debianのメサには、テストでいくつかのパッケージングの変更があり、ストレッチバックポートでも ベンダーニュートラルのGLディスパッチライブラリ に関連して、これは重要ではありません)に関連しています。また、 AMD64
とi386
の両方のパッケージでマルチアーチを使用する場合これらのパッケージはロックステップでアップグレードする必要があります。あなたが見たエラーの.
したがって、すべてをアップグレードせずにメサのみをアップグレードする方法について正確なコマンドを伝えることはできません(これはしないでください(== --- ==)しないでくださいしないでください:stretch-backports
doesセキュリティサポートはありません)が、手順を説明します。
まず、stretch-backports
を適切に追加する方法について Debianの指示 に従ってください。ここに簡単な要約を示します。
# echo 'deb http://deb.debian.org/debian/ stretch-backports main contrib non-free' >> /etc/apt/sources.list.d/stretch-backports.list
# apt-get update
追加した場合は、バスター/テスト/ SIDエントリを削除してください。
一部のパッケージが消えた可能性があります(たとえば、libgles1-mesa
は提供されなくなりました)。 one単一のapt-getコマンドで関連するすべてのパッケージをアップグレードする必要があるため、最初に、最も関連するパッケージを現在のパッケージで確認する必要があります。バージョン、および依存関係リゾルバーが欠落している部分を選択するようにします(例:libdrm2
)。悪いことが起こらないことを確認する必要があるため、スクリプトではなく、手動で処理を行う必要があります(apt-get
で100個のパッケージを削除するなど)。だからこのようなもの:
dpkg -l | fgrep 13.0.6-1+b2
あるいは:
dpkg -l | awk '/^.i/ && $3 == "13.0.6-1+b2" { print $2 }' | xargs
パッケージのリストの主要部分を取得します。インストール済みのマルチアーチパッケージの場合、AMD64
パッケージ(デフォルトでは追加の:AMD64
は必要ありませんが、カット/ペーストからそのままにしておくことができます)とagain同じi386
パッケージ(パッケージ名に:i386
を追加したものを使用)も以前のdpkg
コマンド。したがって、最終的なインストールコマンドは次のようになります。
apt-get -t stretch-backports install libgl1-mesa-dri:AMD64 libgl1-mesa-dri:i386 mesa-opencl-icd:AMD64 mesa-opencl-icd:i386 ...
あなたはアイデアを得ます。ここで、提供される削除されるパッケージの数を確認します。削除するメサ関連パッケージがいくつかある場合(例:libgles1-mesa
)、それらの大部分または多くの関連しないパッケージを削除するように提案されている場合は、中止して、不足している可能性のあるものを熟考します。もちろん、他にも多くのものがアップグレードとして提供される必要があります(例:libdrm2
およびlibdrm2:i386
)。マルチアーチが原因で引き続き問題が発生する可能性があるため、apt-get
が十分にスマートでない場合は、拡張するワンライナーリストに手動で2回(アーチごとに1回)追加する必要があります。
@Stephen Kittが示唆しているように、グラフィックサポートを含むハードウェアの使用法の改善に対処する他の有用な関連パッケージもストレッチバックポートで利用可能であり、おそらくアップグレードする必要もあります。その中で:
linux-image-AMD64
は現在linux-image-4.19.0-0.bpo.2-AMD64
をプルしますfirmware-misc-nonfree
など。