Amazon-Web-Services

如何在 Amazon Linux 2 AMI t2.small 類型上安裝 OpenGL?

  • February 8, 2021

我需要在我的 Amazon Linux 2 AMI 實例上安裝 Grass GIS,它的類型是t2.small在配置 Grass GIS 期間它停止了

checking for GL/gl.h... no
configure: error: *** Unable to locate OpenGL includes.

要安裝 OpenGL 和/或其包含,我嘗試了以下(全部帶有sudo

yum install libx11-dev
yum install libx11
yum install libX11
yum install libX11-dev
yum install libglu1-mesa-dev
yum install freeglut-devel
yum install freeglut3-dev
yum install mesa-common-dev

據我記得,他們都回過這樣的消息(消息翻譯成英文)

amzn2-core
no package named libX11-dev which can be used

問題 #1

我繼續搜尋,發現這個文章似乎說為了使用 OpenGL,實例類型應該G2是 對嗎?

如果是這種情況,那麼我假設該G2類型具有功能強大的圖形硬體,而我的實例t2.small(或不久T2?)可能沒有功能強大的圖形硬體。

lspci | grep VGA給出:00:02.0 VGA 兼容控制器:Cirrus Logic GD 5446

問題2

是否可以以任何方式安裝 OpenGL t2.type(無論是使用yum還是使用原始碼並從頭開始建構 OpenGL)?

在這裡,我們看到編譯失敗,因為缺少 C 包含文件:

checking for GL/gl.h... no
configure: error: *** Unable to locate OpenGL includes.

您應該使用yum搜尋包含失去文件的包。

[ec2-user@localhost ~]$ sudo yum provides */GL/gl.h
Loaded plugins: langpacks, priorities, update-motd
mesa-libGL-devel-17.0.1-6.20170307.amzn2.x86_64 : Mesa libGL development package
Repo        : amzn2-core
Matched from:
Filename    : /usr/include/GL/gl.h



mesa-libGL-devel-17.2.3-8.20171019.amzn2.0.1.x86_64 : Mesa libGL development
                                                   : package
Repo        : amzn2-core
Matched from:
Filename    : /usr/include/GL/gl.h



mesa-libGL-devel-17.2.3-8.20171019.amzn2.0.4.x86_64 : Mesa libGL development
                                                   : package
Repo        : amzn2-core
Matched from:
Filename    : /usr/include/GL/gl.h



mesa-libGL-devel-18.3.4-5.amzn2.0.1.x86_64 : Mesa libGL development package
Repo        : amzn2-core
Matched from:
Filename    : /usr/include/GL/gl.h

所以現在你可以看到包名mesa-libGL-devel,你可以安裝它。

請注意,如果沒有將 GPU 硬體連接到 VM,這不會給您帶來太多收益。您當然可以編譯軟體,但您需要一個帶有 GPU 的實例來執行它,而不必永遠等待軟體渲染。(你看到的 Cirrus 是模擬 1996 年代的 SVGA 卡,它適用於基本影片,幾乎沒有其他功能。它基本上只存在於相對較新的螢幕截圖功能,而這種級別的影片幾乎是它所能做的。)

引用自:https://serverfault.com/questions/1052843