我需要在我的 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)?
答案1
这里我们看到编译失败,因为缺少 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 硬件,那么这不会给你带来太多好处。你当然可以编译软件,但你需要一个带有 GPU 的实例,以便运行它而不必永远等待软件渲染。(你在那里看到的 Cirrus 是模拟的 1996 年 SVGA 卡,它只适用于基本视频,其他功能不多。它基本上只存在于相对较新的屏幕截图功能中,而这种级别的视频几乎就是它所能做的一切。)