gpt4 book ai didi

android - Fedora 64 位中的 Android 模拟器使用哪个 libGL?

转载 作者:太空狗 更新时间:2023-10-29 16:40:30 29 4
gpt4 key购买 nike

我正在使用 Fedora 19 64 位 (GNOME 3) 进行 Android 开发。

locate libGL 给我:

/home/ericnguyen/adt/sdk/tools/lib/libGLES_CM_translator.so
/home/ericnguyen/adt/sdk/tools/lib/libGLES_V2_translator.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so.1.2.0
/usr/lib64/libGL.so.1
/usr/lib64/libGL.so.1.2.0
/usr/lib64/libGLU.so.1
/usr/lib64/libGLU.so.1.3.1
/usr/share/doc/mesa-libGL-9.2
/usr/share/doc/mesa-libGL-9.2/COPYING

现在我无法使用计算机的 GPU 启动模拟器
无法加载 libGL.so错误 libGL.so:无法打开共享对象文件:没有这样的文件或目录

所以,我正试图找到合适的 libGL.so 文件来完成 this .

此外,当我:

yum install mesa-libGL.x86_64

我得到了:

Package mesa-libGL-9.2-0.14.20130723.fc19.x86_64 already installed and latest version
Nothing to do

注意事项:
我可以在没有 GPU 的情况下运行模拟器。

我的显卡是 AMD ATI Radeon HD 5000 系列。我想我还没有为它安装任何驱动程序。我执行了 yum search radeon 并找到了 xorg-x11-drv-ati.x86_64 但我不确定这是否是正确的驱动程序 - 我发现有人遇到了启动问题尝试安装显卡驱动程序(我自己使用 Windows 的经验)所以我现在有点不确定。
我还知道需要安装 AMD/ATI 的专有软件才能使用显卡。

最佳答案

模拟器是一个 32 位应用程序。您需要安装等效的 32 位库。来自 Fedora wiki HOWTO Setup Android Development推荐的库是:

glibc.i686 glibc-devel.i686 libstdc++.i686 zlib-devel.i686 ncurses-devel.i686 libX11-devel.i686 libXrender.i686 libXrandr.i686

如果您可以在没有 GPU 支持的情况下运行模拟器,我会假设您拥有所有这些。

对于 mesa-libGL,您的 yum 命令正在尝试安装该库的 64 位版本,因此请改为尝试:

yum install mesa-libGL.i686

编辑(问题更新后):

是,安装 xorg-x11-drv-ati 驱动程序(如果尚未安装)。这是开源驱动程序,如果它不起作用,您应该返回到您现在正在运行的任何程序。

我有一张 Nvidia 卡,但我以前的 ATI 卡已经运行了这个。我假设自从我不久前设置我的模拟器以来,模拟器发生了一些变化,因为它似乎与 64 位库一起运行:

$ pldd 9989 



...
...
./lib/lib64OpenglRender.so
/opt/android-sdk-linux/tools/./lib/../lib/lib64EGL_translator.so
/usr/lib64/nvidia-304xx/libGL.so.1
/usr/lib64/nvidia-304xx/tls/libnvidia-tls.so.304.88
/usr/lib64/nvidia-304xx/libnvidia-glcore.so.304.88
/opt/android-sdk-linux/tools/./lib/../lib/lib64GLES_CM_translator.so
/opt/android-sdk-linux/tools/./lib/../lib/lib64GLES_V2_translator.so
/lib64/libGL.so
/lib64/libglapi.so.0
/lib64/libXdamage.so.1
/lib64/libX11-xcb.so.1
/lib64/libxcb-glx.so.0
/lib64/libxcb-dri2.so.0
...
...
..
....

(9989 是正在运行的模拟器的进程 ID。)

所以安装您已经提到的驱动程序应该就足够了。

您可以通过模拟器和 JellyBean Easter Egg 测试模拟器是否正在使用它们.

emulator -avd <your_avd_name> -gpu on

应该给你比

明显更好的性能
emulator -avd <your_avd_name> -gpu off  

一些额外的信息:

如果您想尝试,可以安装专有驱动程序 xorg-x11-drv-catalyst,来自 RPM Fussion并将在那里的非免费仓库中找到它。

如果您没有它们,您的系统上已经有 RPM Fussion 存储库(该站点上有详细说明。)我强烈推荐它们。它们得到了很好的支持,并且比使用 Fedora 的一些等价物更容易让您头疼(例如,它们将 mp3 支持返回给软件包。)

你说你是 Linux 的新手(或者可能你的意思是在 Linux 上玩驱动程序)以供引用:你不需要在安装包时包括目标平台(即 .x86_64 .i686)Yum 会排序除非您需要用于您正在运行的体系结构以外的体系结构的库,否则这对您来说是正确的。

关于android - Fedora 64 位中的 Android 模拟器使用哪个 libGL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18507812/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com