15

我已经在 ubuntu 11.10 上安装了带有 Eclipse android 插件(ADT)的 Eclipse 4.2。当我将“Hello World”项目作为 android 应用程序启动时,它根本不会启动!

ps -x > log.txt 启动模拟器后,输出:

1000      7221 20.0  0.6  16884  6908 ?        D    18:11   0:00 /home/tutakhail/android-sdks/tools/emulator-arm -avd AndroidBrowser -netspeed full -netdelay none

从 shell 手动启动模拟器,我收到以下错误,不久之后模拟器启动但速度很慢。

emulator: ERROR: Could not load OpenGLES emulation library: libOpenglRender.so:    cannot open shared object file: No such file or directory
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.

关于这里可能是什么问题的任何提示?也许与Ubuntu有关?

4

11 回答 11

15

原来解决方案是将 LD_LIBRARY_PATH 指向 /tools/lib 路径。下面对我有用。

➜ 工具文件 ../tools/lib/libOpenglRender.so ../tools/lib/libOpenglRender.so:ELF 32 位 LSB 共享对象,Intel 80386,版本 1 (SYSV),动态链接,未剥离

➜ 工具导出 LD_LIBRARY_PATH=/home/xxxx/devel/android-sdk-linux/tools/lib:$LD_LIBRARY_PATH

➜ 工具 ./emulator-x86 -avd AtomX86 -gpu on -qemu -m 1024 -enable-kvm

模拟器:模拟器窗口不在视野范围内并被重新定位....

于 2012-07-27T23:38:33.380 回答
5

我猜它是一个影响最新版本 ADT 的错误,可能与 NVIDIA GPU 驱动程序有关。这个问题在这里讨论:

https://groups.google.com/forum/?fromgroups#!topic/adt-dev/nlA07toW1fc

我发现至少可以让我执行我的应用程序直到发布永久解决方案的解决方法是,首先从 shell 启动模拟器,即使它抛出错误。之后,我右键单击并将我的项目作为“Android 应用程序”运行。模拟器确实令人惊讶地执行它们!

于 2012-08-10T17:44:15.977 回答
4

我有类似的错误,我猜这个错误是由于缺少 libGL.so 引起的。

安装软件包 libgl1-mesa-dev;

sudo apt-get install libgl1-mesa-dev

资源

于 2012-08-23T08:08:40.197 回答
2

I tried to use the Intel Hardware Acceleration in Ubuntu 12.04 for running emulators using KVM package. However I was getting the error, "Failed to start RenderThread". Installing the package libgl1-mesa-dev and reducing the Device RAM Size to 512 solved my problem. The emulator now is indeed atleast 10X faster. I hope this would help someone trying to emulate android devices in Ubuntu using Intel processor that supports Virtualizattion Technology.

于 2014-02-06T03:21:28.050 回答
2

首先尝试从命令行运行模拟器,看看是否一切顺利。您可能需要添加以下选项:

-no-audio 
-gpu off

我已经看到音频阻止模拟器在某些 Ubuntu 配置上启动。

于 2012-07-26T19:27:15.553 回答
1

所以我想也许你没有正确安装所有东西。

您应该检查您是否按照以下步骤操作:http: //www.wikihow.com/Install-Android-on-Ubuntu-Linux-With-Eclipse-Ide

正确安装并设置 PATH 环境变量后。您还可以做的另一件事是尝试删除 AVD 模拟器并创建一个新的,然后再试一次。

我也在这里找到了你的问题:https ://groups.google.com/forum/?fromgroups#!topic/adt-dev/nlA07toW1fc

您提出的问题并不具体,因此请尝试按照步骤操作。

于 2012-07-26T17:35:42.413 回答
1

如果使用 eclipse,您必须在“Java Build Path”-> Libraries-> Android 4.4 ->“Native library location”中添加 Project-Properties 到 sdk/tools/lib 目录的路径。对我来说,这是“sdk 安装目录”/sdk/tools/lib”

于 2013-12-05T11:12:33.103 回答
1

以下命令在同样的问题上救了我的命

sudo apt-get install libgl1-mesa-dev
于 2013-12-27T08:33:39.983 回答
1

配置 ANDROID_HOME

export ANDROID_HOME=//android-sdk-macosx
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

并设置 LD_LIBRARY_PATH

导出 LD_LIBRARY_PATH="$ANDROID_HOME/emulator/lib64:$LD_LIBRARY_PATH"

运行 ARM 版本

cd $ANDROID_HOME/emulator/
./emulator64-arm -avd Nexus_5X_ARM_22 -no-audio -gpu off

于 2017-05-25T18:01:27.303 回答
0

libOpenglRender.so 和其他必要的文件确实存在于 tools/lib64 中,而 avd 试图在 tools/lib 中找到它们 对文件和目录进行符号链接有帮助(在我的情况下)

ln -s ../lib64/qt qt
ln -s ../lib64/gles_mesa gles_mesa
ln -s ../lib64/libstdc++ libstdc++
ln -s ../lib64/lib64GLES_V2_translator.so lib64GLES_V2_translator.so
ln -s ../lib64/lib64emugl_test_shared_library.so lib64emugl_test_shared_library.so
ln -s ../lib64/lib64OpenglRender.so lib64OpenglRender.so
ln -s ../lib64/lib64GLES_CM_translator.so lib64GLES_CM_translator.so
ln -s ../lib64/lib64EGL_translator.so lib64EGL_translator.so

(似乎是原始配置中的错误,因为在全新安装工作室/sdk 时会发生这种情况)

于 2016-09-01T17:24:46.303 回答
0

我通过安装 32 位 libGL 在我的 Red Hat Linux 64 位上解决了这个问题(它应该位于 /usr/lib/ 中)

 sudo yum install mesa-libGL.i686
于 2015-07-13T21:45:32.657 回答