Câu trả lời:
Để kiểm tra phiên bản OpenGL,
glxinfo | grep "OpenGL version"
Bạn sẽ nhận được đầu ra như sau,
glxinfo | grep "OpenGL version"
OpenGL version string: 1.4 (2.1 Mesa 7.7.1)
Biên tập:
Bạn có thể gặp may mắn hơn với OpenGL hiện đại chỉ cần grepping cho "phiên bản" thay vì "phiên bản OpenGL" với sự khác biệt giữa cấu hình lõi và cấu hình, cũng như các phiên bản GLSL và GLES khác nhau:
glxinfo | grep 'version'
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
Max core profile version: 4.1
Max compat profile version: 3.0
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.0
OpenGL core profile version string: 4.1 (Core Profile) Mesa 11.1.2
OpenGL core profile shading language version string: 4.10
OpenGL version string: 3.0 Mesa 11.1.2
OpenGL shading language version string: 1.30
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.1.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
Lưu ý rằng phiên bản thực tế được trình bày bởi "phiên bản cấu hình lõi" (4.1), trong khi "phiên bản OpenGL" được trình bày là 3.0.
glxinfo
không có sẵn theo mặc định. Để có thể sử dụng nó, bạn cần cài đặt mesa-utils
gói.
tùy thuộc vào những gì bạn đang tìm kiếm:
Thực hiện GL mở
Bạn có thể sử dụng glxinfo, từ gói mesa-utils:
sudo apt-get install mesa-utils
glxinfo | grep "OpenGL version"
Thư viện phát triển
điều này phụ thuộc một chút
dpkg -s [package name]
sẽ cho bạn biết thông tin phiên bản, vv của bất kỳ gói.
nhưng bạn sẽ cần biết phần cụ thể / triển khai, v.v. của opengl mà bạn quan tâm. Tôi nghi ngờ, đối với bạn, đó sẽ là:
dpkg -s libglu1-mesa
Lưu ý: Tôi đã thêm câu trả lời này vào một ngày sau đó, bởi vì không có câu trả lời nào hiện có đề cập đến một khía cạnh quan trọng liên quan đến ssh và sẽ đưa ra các giá trị sai lệch cho những người làm theo các hướng dẫn trên.
Sử dụng chuyển tiếp X khi ssh-ing. Điều này được kích hoạt với ssh -X
.
Không có chuyển tiếp x:
$ ssh MYCOMP
$ glxinfo
Error: unable to open display
Với chuyển tiếp x:
$ ssh -X MYCOMP
$ glxinfo | grep -i opengl
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce 8800 GT/PCIe/SSE2
OpenGL version string: 2.1.2 NVIDIA 310.44
OpenGL shading language version string: 1.20 NVIDIA via Cg compiler
OpenGL extensions:
Tôi nên lưu ý ở đây rằng đây là cả card đồ họa sai và số phiên bản sai . ('Sai' về những gì bạn mong đợi).
Đặt DISPLAY
biến thành:0
, để cho phép truy cập vào trình điều khiển của card đồ họa từ phiên từ xa.
$ ssh -X MYCOMP
$ DISPLAY=:0
$ glxinfo | grep -i opengl
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 550 Ti/PCIe/SSE2
OpenGL version string: 4.3.0 NVIDIA 310.14
OpenGL shading language version string: 4.30 NVIDIA via Cg compiler
OpenGL extensions:
Điều này liệt kê đúng card đồ họa (cái trên máy tính từ xa), cũng như số phiên bản chính xác.
localhost:10.0
, không may dẫn đến X Error of failed request: GLXBadContext
.
Bạn có thể lấy thông tin bằng cách chạy lệnh sau:
DISPLAY=:0 glxgears -info | grep GL_VERSION
Tiếng vang này giống như:
GL_VERSION = 3.3.0 NVIDIA 340.93
Cũng cố gắng mà không có DISPLAY=:0
vấn đề. Lệnh glxgears
này nằm trong mesa-utils
gói có thể được cài đặt với:
sudo apt-get install mesa-utils
Nếu bạn có quyền truy cập root vào một máy tính từ xa chạy Ubuntu 16.04, bạn có thể chạy
user@local_computer:~$ ssh root@remote.example.com
root@remote:~# export DISPLAY=:0
root@remote:~# export XAUTHORITY=/var/lib/lightdm/.Xauthority
root@remote:~# glxinfo | grep -i "OpenGL version"
OpenGL version string: 3.0 Mesa 11.2.0