My favorites | Sign in
Project Home Issues
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 34233: Emulator start produces segmentation fault after upgrading to r20
53 people starred this issue and may be notified of changes. Back to list
 
Reported by lorenzo...@gmail.com, Jul 4, 2012

Host OS: Ubuntu 11.04 64bits
SDK tools version: r20
Eclipse version: Indigo
ADT plug-in version: 20
Platform targeted by your project: API8
Version of the platform running in the emulator: Google APIs, rev2

STEPS TO REPRODUCE:
1. Create avd with default settings: android create avd -n test -t 5
2. Start the emulator: emulator @test

EXPECTED RESULTS:
Emulator starts

OBSERVED RESULTS:
Emulator start crashes and produces a segmentation fault when "Initializing hardware OpenGLES emulation support"

ADDITIONAL INFORMATION:

I tried to avoid the problem using different targets on the emulator with default configurations but the result is the same.

I tried to downgrade the SDK and the ADT plugin to confirm the problem was the update but i couldn't find the resource to get a previous version of the ADT plugin. If someone leads me to a place to get it i could confirm this.

I tried downloading a fresh copy of the SDK but results stay the same.

Actually i'm setting-up a environment with a 32bit OS to get a solution to keep working on, i will post the results.

Also i found an issue with a similar problem but with a complex environment, i'm not sure if i should report this as new issue or post a comment there: https://code.google.com/p/android/issues/detail?id=34165

Below is the verbose output of the emulator start:

iai@blackbox:~/AndroidDevel/android-sdk-linux2$ emulator -verbose @test
emulator: found SDK root at /home/iai/AndroidDevel/android-sdk-linux2
emulator: Android virtual device file at: /home/iai/.android/avd/test.ini
emulator: virtual device content at /home/iai/.android/avd/test.avd
emulator: virtual device config file: /home/iai/.android/avd/test.avd/config.ini
emulator: using core hw config path: /home/iai/.android/avd/test.avd/hardware-qemu.ini
emulator: Found AVD target API level: 8
emulator: found skin 'WVGA800' in directory: /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins
emulator: autoconfig: -skin WVGA800
emulator: autoconfig: -skindir /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins
emulator: found skin-specific hardware.ini: /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins/WVGA800/hardware.ini
emulator: keyset loaded from: /home/iai/.android/default.keyset
emulator: trying to load skin file '/home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins/WVGA800/layout'
emulator: skin network speed: 'full'
emulator: skin network delay: 'none'
emulator: autoconfig: -kernel /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/images//kernel-qemu
emulator: autoconfig: -ramdisk /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//ramdisk.img
emulator: Using initial system image: /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//system.img
emulator: autoconfig: -data /home/iai/.android/avd/test.avd/userdata-qemu.img
emulator: autoconfig: -initdata /home/iai/.android/avd/test.avd/userdata.img
emulator: autoconfig: -cache /home/iai/.android/avd/test.avd/cache.img
emulator: Physical RAM size: 128MB

Content of hardware configuration file:
  hw.cpu.arch = arm
  hw.ramSize = 128
  hw.screen = touch
  hw.mainKeys = yes
  hw.trackBall = yes
  hw.keyboard = no
  hw.keyboard.lid = yes
  hw.keyboard.charmap = qwerty2
  hw.dPad = yes
  hw.gsmModem = yes
  hw.gps = yes
  hw.battery = yes
  hw.accelerometer = yes
  hw.audioInput = yes
  hw.audioOutput = yes
  hw.sdCard = yes
  disk.cachePartition = yes
  disk.cachePartition.path = /home/iai/.android/avd/test.avd/cache.img
  disk.cachePartition.size = 66m
  hw.lcd.width = 480
  hw.lcd.height = 800
  hw.lcd.depth = 16
  hw.lcd.density = 240
  hw.lcd.backlight = yes
  hw.gpu.enabled = no
  hw.camera.back = emulated
  hw.camera.front = none
  vm.heapSize = 24
  hw.sensors.proximity = yes
  hw.sensors.magnetic_field = yes
  hw.sensors.orientation = yes
  hw.sensors.temperature = yes
  kernel.path = /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/images//kernel-qemu
  kernel.parameters =  android.checkjni=1
  disk.ramdisk.path = /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//ramdisk.img
  
  disk.systemPartition.size = 200m
  disk.dataPartition.path = /home/iai/.android/avd/test.avd/userdata-qemu.img
  disk.dataPartition.size = 200m
  avd.name = test
.
QEMU options list:
emulator: argv[00] = "/home/iai/AndroidDevel/android-sdk-linux2/tools/emulator-arm"
emulator: argv[01] = "-android-hw"
emulator: argv[02] = "/home/iai/.android/avd/test.avd/hardware-qemu.ini"
Concatenated QEMU options:
 /home/iai/AndroidDevel/android-sdk-linux2/tools/emulator-arm -android-hw /home/iai/.android/avd/test.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: nand_add_dev: system,size=0xc800000,initfile=/home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//system.img
emulator: mapping 'system' NAND image to /tmp/android-iai/emulator-gn6Zs1
emulator: rounding devsize up to a full eraseunit, now c810000

emulator: nand_add_dev: userdata,size=0xc800000,file=/home/iai/.android/avd/test.avd/userdata-qemu.img
emulator: rounding devsize up to a full eraseunit, now c810000

emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '24m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '240'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '1'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'back'
emulator: nand_add_dev: cache,size=0x4200000,file=/home/iai/.android/avd/test.avd/cache.img
emulator: Initializing hardware OpenGLES emulation support
Fallo de segmento

Jul 4, 2012
#1 lorenzo...@gmail.com
After taking a read over the issue https://code.google.com/p/android/issues/detail?id=4516 i tried to start the emulator with different flags, and finally i get something with "emulator -gpu on @test". The emulator starts, the emulator window is displayed but the screen stays black. I executed it with -verbose and i observed the execution does not complete (i waited about 10 minutes to see if it continues).

Below is the verbose output of "emulator -verbose -gpu on @test":

emulator: found SDK root at /home/iai/AndroidDevel/android-sdk-linux2
emulator: Android virtual device file at: /home/iai/.android/avd/test.ini
emulator: virtual device content at /home/iai/.android/avd/test.avd
emulator: virtual device config file: /home/iai/.android/avd/test.avd/config.ini
emulator: using core hw config path: /home/iai/.android/avd/test.avd/hardware-qemu.ini
emulator: Found AVD target API level: 8
emulator: found skin 'WVGA800' in directory: /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins
emulator: autoconfig: -skin WVGA800
emulator: autoconfig: -skindir /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins
emulator: found skin-specific hardware.ini: /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins/WVGA800/hardware.ini
emulator: keyset loaded from: /home/iai/.android/default.keyset
emulator: trying to load skin file '/home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins/WVGA800/layout'
emulator: skin network speed: 'full'
emulator: skin network delay: 'none'
emulator: autoconfig: -kernel /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/images//kernel-qemu
emulator: autoconfig: -ramdisk /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//ramdisk.img
emulator: Using initial system image: /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//system.img
emulator: autoconfig: -data /home/iai/.android/avd/test.avd/userdata-qemu.img
emulator: autoconfig: -initdata /home/iai/.android/avd/test.avd/userdata.img
emulator: autoconfig: -cache /home/iai/.android/avd/test.avd/cache.img
emulator: Physical RAM size: 128MB

Content of hardware configuration file:
  hw.cpu.arch = arm
  hw.ramSize = 128
  hw.screen = touch
  hw.mainKeys = yes
  hw.trackBall = yes
  hw.keyboard = no
  hw.keyboard.lid = yes
  hw.keyboard.charmap = qwerty2
  hw.dPad = yes
  hw.gsmModem = yes
  hw.gps = yes
  hw.battery = yes
  hw.accelerometer = yes
  hw.audioInput = yes
  hw.audioOutput = yes
  hw.sdCard = yes
  disk.cachePartition = yes
  disk.cachePartition.path = /home/iai/.android/avd/test.avd/cache.img
  disk.cachePartition.size = 66m
  hw.lcd.width = 480
  hw.lcd.height = 800
  hw.lcd.depth = 16
  hw.lcd.density = 240
  hw.lcd.backlight = yes
  hw.gpu.enabled = yes
  hw.camera.back = emulated
  hw.camera.front = none
  vm.heapSize = 24
  hw.sensors.proximity = yes
  hw.sensors.magnetic_field = yes
  hw.sensors.orientation = yes
  hw.sensors.temperature = yes
  kernel.path = /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/images//kernel-qemu
  kernel.parameters =  android.checkjni=1
  disk.ramdisk.path = /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//ramdisk.img
  
  disk.systemPartition.size = 200m
  disk.dataPartition.path = /home/iai/.android/avd/test.avd/userdata-qemu.img
  disk.dataPartition.size = 200m
  avd.name = test
.
QEMU options list:
emulator: argv[00] = "/home/iai/AndroidDevel/android-sdk-linux2/tools/emulator-arm"
emulator: argv[01] = "-android-hw"
emulator: argv[02] = "/home/iai/.android/avd/test.avd/hardware-qemu.ini"
Concatenated QEMU options:
 /home/iai/AndroidDevel/android-sdk-linux2/tools/emulator-arm -android-hw /home/iai/.android/avd/test.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: nand_add_dev: system,size=0xc800000,initfile=/home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//system.img
emulator: mapping 'system' NAND image to /tmp/android-iai/emulator-FeOGX9
emulator: rounding devsize up to a full eraseunit, now c810000

emulator: nand_add_dev: userdata,size=0xc800000,file=/home/iai/.android/avd/test.avd/userdata-qemu.img
emulator: rounding devsize up to a full eraseunit, now c810000

emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '24m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '240'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '1'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'back'
emulator: nand_add_dev: cache,size=0x4200000,file=/home/iai/.android/avd/test.avd/cache.img
emulator: Initializing hardware OpenGLES emulation support
emulator: Kernel parameters: qemu.gles=1 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 ndns=2
emulator: Trace file name is not set

emulator: autoconfig: -scale 1
emulator: Could not open file: (null)/system/build.prop: No such file or directory
emulator: control console listening on port 5554, ADB on port 5555
emulator: sent '0012host:emulator:5555' to ADB server
emulator: ping program: /home/iai/AndroidDevel/android-sdk-linux2/tools/ddms
emulator: ping command: /home/iai/AndroidDevel/android-sdk-linux2/tools/ddms ping emulator 20.0 "NVIDIA Corporation" "GeForce 9800 GTX/PCI/SSE2" "2.1.2 NVIDIA 173.14.30"
goldfish_fb_get_pixel_format:167: display surface,pixel format:
  bits/pixel:  16
  bytes/pixel: 2
  depth:       16
  red:         bits=5 mask=0xf800 shift=11 max=0x1f
  green:       bits=6 mask=0x7e0 shift=5 max=0x3f
  blue:        bits=5 mask=0x1f shift=0 max=0x1f
  alpha:       bits=0 mask=0x0 shift=0 max=0x0
emulator: User configuration saved to /home/iai/.android/avd/test.avd/emulator-user.ini
iai@blackbox:~/AndroidDevel/android-sdk-linux2$ emulator -verbose -no-window -gpu on @test
emulator: found SDK root at /home/iai/AndroidDevel/android-sdk-linux2
emulator: Android virtual device file at: /home/iai/.android/avd/test.ini
emulator: virtual device content at /home/iai/.android/avd/test.avd
emulator: virtual device config file: /home/iai/.android/avd/test.avd/config.ini
emulator: using core hw config path: /home/iai/.android/avd/test.avd/hardware-qemu.ini
emulator: Found AVD target API level: 8
emulator: found skin 'WVGA800' in directory: /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins
emulator: autoconfig: -skin WVGA800
emulator: autoconfig: -skindir /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins
emulator: found skin-specific hardware.ini: /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins/WVGA800/hardware.ini
emulator: keyset loaded from: /home/iai/.android/default.keyset
emulator: trying to load skin file '/home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/skins/WVGA800/layout'
emulator: skin network speed: 'full'
emulator: skin network delay: 'none'
emulator: autoconfig: -kernel /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/images//kernel-qemu
emulator: autoconfig: -ramdisk /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//ramdisk.img
emulator: Using initial system image: /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//system.img
emulator: autoconfig: -data /home/iai/.android/avd/test.avd/userdata-qemu.img
emulator: autoconfig: -initdata /home/iai/.android/avd/test.avd/userdata.img
emulator: autoconfig: -cache /home/iai/.android/avd/test.avd/cache.img
emulator: Physical RAM size: 128MB

Content of hardware configuration file:
  hw.cpu.arch = arm
  hw.ramSize = 128
  hw.screen = touch
  hw.mainKeys = yes
  hw.trackBall = yes
  hw.keyboard = no
  hw.keyboard.lid = yes
  hw.keyboard.charmap = qwerty2
  hw.dPad = yes
  hw.gsmModem = yes
  hw.gps = yes
  hw.battery = yes
  hw.accelerometer = yes
  hw.audioInput = yes
  hw.audioOutput = yes
  hw.sdCard = yes
  disk.cachePartition = yes
  disk.cachePartition.path = /home/iai/.android/avd/test.avd/cache.img
  disk.cachePartition.size = 66m
  hw.lcd.width = 480
  hw.lcd.height = 800
  hw.lcd.depth = 16
  hw.lcd.density = 240
  hw.lcd.backlight = yes
  hw.gpu.enabled = yes
  hw.camera.back = emulated
  hw.camera.front = none
  vm.heapSize = 24
  hw.sensors.proximity = yes
  hw.sensors.magnetic_field = yes
  hw.sensors.orientation = yes
  hw.sensors.temperature = yes
  kernel.path = /home/iai/AndroidDevel/android-sdk-linux2/platforms/android-8/images//kernel-qemu
  kernel.parameters =  android.checkjni=1
  disk.ramdisk.path = /home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//ramdisk.img
  
  disk.systemPartition.size = 200m
  disk.dataPartition.path = /home/iai/.android/avd/test.avd/userdata-qemu.img
  disk.dataPartition.size = 200m
  avd.name = test
.
QEMU options list:
emulator: argv[00] = "/home/iai/AndroidDevel/android-sdk-linux2/tools/emulator-arm"
emulator: argv[01] = "-android-hw"
emulator: argv[02] = "/home/iai/.android/avd/test.avd/hardware-qemu.ini"
Concatenated QEMU options:
 /home/iai/AndroidDevel/android-sdk-linux2/tools/emulator-arm -android-hw /home/iai/.android/avd/test.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: nand_add_dev: system,size=0xc800000,initfile=/home/iai/AndroidDevel/android-sdk-linux2/add-ons/addon-google_apis-google-8/images//system.img
emulator: mapping 'system' NAND image to /tmp/android-iai/emulator-pyLTRy
emulator: rounding devsize up to a full eraseunit, now c810000

emulator: nand_add_dev: userdata,size=0xc800000,file=/home/iai/.android/avd/test.avd/userdata-qemu.img
emulator: rounding devsize up to a full eraseunit, now c810000

emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '24m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '240'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '1'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'back'
emulator: nand_add_dev: cache,size=0x4200000,file=/home/iai/.android/avd/test.avd/cache.img
emulator: Initializing hardware OpenGLES emulation support
emulator: Kernel parameters: qemu.gles=1 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 ndns=2
emulator: Trace file name is not set

emulator: Could not open file: (null)/system/build.prop: No such file or directory
emulator: control console listening on port 5554, ADB on port 5555
emulator: sent '0012host:emulator:5555' to ADB server
emulator: ping program: /home/iai/AndroidDevel/android-sdk-linux2/tools/ddms
emulator: ping command: /home/iai/AndroidDevel/android-sdk-linux2/tools/ddms ping emulator 20.0 "NVIDIA Corporation" "GeForce 9800 GTX/PCI/SSE2" "2.1.2 NVIDIA 173.14.30"
goldfish_fb_get_pixel_format:167: display surface,pixel format:
  bits/pixel:  16
  bytes/pixel: 2
  depth:       16
  red:         bits=5 mask=0xf800 shift=11 max=0x1f
  green:       bits=6 mask=0x7e0 shift=5 max=0x3f
  blue:        bits=5 mask=0x1f shift=0 max=0x1f
  alpha:       bits=0 mask=0x0 shift=0 max=0x0

Jul 4, 2012
#3 lorenzo...@gmail.com
I saw the -gpu option should not work under API level 15, rev 3, at http://developer.android.com/tools/help/emulator.html

Don't know why it works with the lvl 8 targeted avd, but this leads me on making some more tests. After all, i cannot work actually on my current project and the 32-bit environment will take some time to be ready & working, supposing it will work ofc.

I tried with 2 more emulators, targeting API level 16 this time, with the following results:

android create avd -n test16 -t "android-16"
emulator @test16 => Segmentation fault again
emulator -gpu on @test16 => emulator starts and home screen is displayed. It works very slow at the first, after some time executing (about 10 minutes) it starts relatively ok.


android create avd -n test16APIs -t "Google Inc.:Google APIs:16"
emulator @test16APIs => Segmentation fault again
emulator -gpu on @test16APIs => emulator starts, after a bit time loading. It works fluid since the home screen is displayed

Am i doing a bad practice using default configurations for emulators? It seems the problem is something related to the virtual device setup but i don't know exactly what to try with the level 8 emulator.

Any ideas¿?
Jul 4, 2012
#4 zymurg...@gmail.com
Same issue on Ubuntu 10.04 i686.  All Android versions of AVD's I have crash.  This worked fine the last time I ran it, on June 10th.  Here's the end of the strace of the emulator:

clone(child_stack=0xb6c16484, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0xb6c16bd8, {entry_number:6, base_addr:0xb6c16b70, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xb6c16bd8) = 17008
lstat64("/tmp/android-dave", {st_mode=S_IFDIR|0744, st_size=4096, ...}) = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 15
connect(15, {sa_family=AF_FILE, path="/tmp/android-dave/qemu-gles-22468"}, 36) = 0
send(15, "\1\0\0\0", 4, 0)              = 4
futex(uaddr=0xb6c16bd8, op=FUTEX_WAIT, val=17008, timespec=NULL <unfinished ...>
+++ killed by SIGSEGV +++
Segmentation fault

Jul 6, 2012
#5 wendellc...@gmail.com
I am observing this as well.

I have: Fedora 14 Laughlin on x86_64 with nVidia and i686 with Intel
a. x86_64 with NVIDIA => emulator segfaults
b. i686 with Intel => emulator fires up


The approach is that the problem is either 
a. NVIDIA is the cause (proprietary | buggy libraries)
b. x86_64 is the cause (wouldn't even with Intel GPUs)
Further debug necessary...

I'm looking for evidence that someone has gotten the emulator to run on x86_64 for something around Fedora 14.Laughlin with a GPU other than NVIDIA.  It would be helpful to know if that is possible.

(functions)
Linux intel.mybox.local 2.6.35.14-106.fc14.i686.PAE #1 SMP Wed Nov 23 13:39:51 UTC 2011 i686 i686 i386 GNU/Linux

(segfaults)
Linux nvidia.mybox.local 2.6.35.14-95.fc14.x86_64 #1 SMP Tue Aug 16 21:01:58 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux



Here's some actualities ... 

(on nvidia.mybox.local)
$ emulator -verbose -avd test1
<snip/>
emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '24m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '240'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '1'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'back'
emulator: nand_add_dev: cache,size=0x4200000,file=/home/wbaker/.android/avd/test1.avd/cache.img
emulator: Initializing hardware OpenGLES emulation support
Segmentation fault (core dumped)





from strace ...

<snip/>
open("/usr/lib/libnvidia-glcore.so.280.13", O_RDONLY) = 8
read(8, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200r8\0004\0\0\0"..., 512) = 512
fstat64(8, {st_mode=S_IFREG|0755, st_size=26206228, ...}) = 0
mmap2(NULL, 26282400, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 8, 0) = 0xbcc000
mmap2(0x246c000, 385024, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 8, 0x18a0) = 0x246c000
mmap2(0x24ca000, 76192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x24ca000
close(8)                                = 0
mprotect(0xbcc000, 25821184, PROT_READ|PROT_WRITE) = 0
mprotect(0xbcc000, 25821184, PROT_READ|PROT_EXEC) = 0
mprotect(0xb96000, 8192, PROT_READ|PROT_WRITE) = 0
mprotect(0xb96000, 8192, PROT_READ|PROT_EXEC) = 0
mprotect(0x7ef000, 671744, PROT_READ|PROT_WRITE) = 0
mprotect(0x7ef000, 671744, PROT_READ|PROT_EXEC) = 0
clock_gettime(CLOCK_MONOTONIC, {441764, 859538598}) = 0
clock_gettime(CLOCK_MONOTONIC, {441764, 859727111}) = 0
getpid()                                = 24120
getpid()                                = 24120
getpid()                                = 24120
--- {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0} (Segmentation fault) ---
+++ killed by SIGSEGV (core dumped) +++


(on nvidia.mybox.local)
$ dmesg | grep emulator
[437714.971456] emulator-arm[3411]: segfault at 0 ip (null) sp 00000000ffce66b0 error 14 in libutil-2.13.so[483000+2000]
[437731.815432] emulator-arm[3797]: segfault at 0 ip (null) sp 00000000fff19d20 error 14 in libOpenglRender.so[2d5000+43000]
[438049.240492] emulator-arm[5704]: segfault at 0 ip (null) sp 00000000fff4b6a0 error 14 in libGL.so.280.13[110000+a4000]
[438083.253856] emulator-arm[5843]: segfault at 0 ip (null) sp 00000000ffff7450 error 14 in libOpenglRender.so[1ae000+43000]
[438231.171306] emulator-arm[6586]: segfault at 0 ip (null) sp 00000000ff930b60 error 14 in libGL.so.280.13[110000+a4000]
[438724.436805] emulator-arm[9401]: segfault at 0 ip (null) sp 00000000ff836600 error 14 in libGL.so.280.13[198000+a4000]
[438764.216899] emulator-arm[9590]: segfault at 0 ip (null) sp 00000000fff45720 error 14 in libOpenglRender.so[185000+43000]
[438891.487855] emulator-arm[10265]: segfault at 0 ip (null) sp 00000000ffa9c720 error 14 in libnvidia-tls.so.280.13[283000+2000]
[438955.002543] emulator-arm[10625]: segfault at 0 ip (null) sp 00000000ff836700 error 14 in libutil-2.13.so[122000+2000]
[439160.529160] emulator-arm[11883]: segfault at 0 ip (null) sp 00000000ffb79e10 error 14 in libutil-2.13.so[1eb000+2000]
[440675.472922] emulator-arm[21300]: segfault at 0 ip (null) sp 00000000ffdf3e70 error 14 in libutil-2.13.so[1c0000+2000]
[441058.326443] emulator-arm[23267]: segfault at 0 ip (null) sp 00000000fff2e8d0 error 14 in libGL.so.280.13[19e000+a4000]
[441114.509620] emulator-arm[23700]: segfault at 0 ip (null) sp 00000000ffa11130 error 14 in libOpenglRender.so[110000+43000]
[479081.995795] emulator-arm[29331]: segfault at 0 ip (null) sp 00000000fff3e6b0 error 14 in libutil-2.13.so[114000+2000]
[479146.395794] emulator-arm[29668]: segfault at 0 ip (null) sp 00000000ff93bca0 error 14 in libOpenglRender.so[110000+43000]
[479215.078153] emulator-arm[29977]: segfault at 0 ip (null) sp 00000000fffbe240 error 14 in libEGL_translator.so[2a9000+2a000]
[481298.874355] emulator-arm[6756]: segfault at 0 ip (null) sp 00000000ffde5300 error 14 in libOpenglRender.so[195000+43000]


The nvidia forums are off line this morning (!!!) but this pointer & description seems tantalizing (from a year ago)

http://forums.nvidia.com/index.php?showtopic=207260
Crashes in libnvidia-glcore.so.280.13 - NVIDIA Forums
 forums.nvidia.com/index.php?showtopic=207260
Aug 6, 2011 – [13412.711243] glxgears[18754]: segfault at 0 ip (null) sp ... libnvidia-tls.so.280.13 => /usr/lib/x86_64-linux-gnu/tls/libnvidia-tls.so.280.13 ...



(on nvidia.mybox.local)
$ ls -l /usr/lib/libnvidia*
-rwxr-xr-x. 1 root root 27722344 Aug 24  2011 /usr/lib/libnvidia-compiler.so.280.13
-rwxr-xr-x. 1 root root 26206228 Aug 24  2011 /usr/lib/libnvidia-glcore.so.280.13
lrwxrwxrwx. 1 root root       17 Aug 24  2011 /usr/lib/libnvidia-ml.so -> libnvidia-ml.so.1
lrwxrwxrwx. 1 root root       22 Aug 24  2011 /usr/lib/libnvidia-ml.so.1 -> libnvidia-ml.so.280.13
-rwxr-xr-x. 1 root root   162092 Aug 24  2011 /usr/lib/libnvidia-ml.so.280.13
-rwxr-xr-x. 1 root root     8264 Aug 24  2011 /usr/lib/libnvidia-tls.so.280.13

(on nvidia.mybox.local)
$ rpm -q -f /usr/lib/libnvid*
file /usr/lib/libnvidia-compiler.so.280.13 is not owned by any package
file /usr/lib/libnvidia-glcore.so.280.13 is not owned by any package
file /usr/lib/libnvidia-ml.so is not owned by any package
file /usr/lib/libnvidia-ml.so.1 is not owned by any package
file /usr/lib/libnvidia-ml.so.280.13 is not owned by any package
file /usr/lib/libnvidia-tls.so.280.13 is not owned by any package


(on nvidia.mybox.local)
In general, /var/log/messages says ...
Jul  5 18:51:04 mybox.local kernel: [437731.815432] emulator-arm[3797]: segfault at 0 ip (null) sp 00000000fff19d20 error 14 in libOpenglRender.so[2d5000+43000]
Jul  5 18:56:22 mybox.local kernel: [438049.240492] emulator-arm[5704]: segfault at 0 ip (null) sp 00000000fff4b6a0 error 14 in libGL.so.280.13[110000+a4000]
Jul  5 18:56:56 mybox.local kernel: [438083.253856] emulator-arm[5843]: segfault at 0 ip (null) sp 00000000ffff7450 error 14 in libOpenglRender.so[1ae000+43000]
Jul  5 18:59:24 mybox.local kernel: [438231.171306] emulator-arm[6586]: segfault at 0 ip (null) sp 00000000ff930b60 error 14 in libGL.so.280.13[110000+a4000]
Jul  5 19:04:58 mybox.local yum[8294]: Installed: glibc-devel-2.13-2.i686
Jul  5 19:07:38 mybox.local kernel: [438724.436805] emulator-arm[9401]: segfault at 0 ip (null) sp 00000000ff836600 error 14 in libGL.so.280.13[198000+a4000]
Jul  5 19:08:18 mybox.local kernel: [438764.216899] emulator-arm[9590]: segfault at 0 ip (null) sp 00000000fff45720 error 14 in libOpenglRender.so[185000+43000]
Jul  5 19:10:25 mybox.local kernel: [438891.487855] emulator-arm[10265]: segfault at 0 ip (null) sp 00000000ffa9c720 error 14 in libnvidia-tls.so.280.13[283000+2000]
Jul  5 19:46:35 mybox.local kernel: [441058.326443] emulator-arm[23267]: segfault at 0 ip (null) sp 00000000fff2e8d0 error 14 in libGL.so.280.13[19e000+a4000]
Jul  5 19:47:31 mybox.local kernel: [441114.509620] emulator-arm[23700]: segfault at 0 ip (null) sp 00000000ffa11130 error 14 in libOpenglRender.so[110000+43000]
Jul  6 06:22:13 mybox.local kernel: [479146.395794] emulator-arm[29668]: segfault at 0 ip (null) sp 00000000ff93bca0 error 14 in libOpenglRender.so[110000+43000]
Jul  6 06:23:22 mybox.local kernel: [479215.078153] emulator-arm[29977]: segfault at 0 ip (null) sp 00000000fffbe240 error 14 in libEGL_translator.so[2a9000+2a000]
Jul 6, 2012
#7 lorenzo...@gmail.com
Hi again. Yesterday i finished the setup on i386, with ubuntu 12.04 and eclipse 4.2.

Everything works fine on i386.

My GPU is NVIDIA on both 64 bit and 32 bit systems so, as observed by #5, it seems something is wrong with NVIDIA GPUs running under 64 bits architecture.

In place of a) NVIDIA problem, b) 64 bit problem; i think actually the problem is, as said above, the combination of NVIDIA GPU & 64 bit.
Jul 12, 2012
#8 a...@scvngr.com
I'm also unable to reproduce this by unsetting DISPLAY and trying to run the emulator with -no-window.
Jul 17, 2012
#9 lagos.t...@gmail.com
I'm getting the same error:

...
emulator: Initializing hardware OpenGLES emulation support
Segmentation fault 

I'm running a headless Ubuntu 12.04 LTS 64-bit  system.
Jul 17, 2012
Project Member #11 vs...@google.com
(No comment was entered for this change.)
Owner: jesseh...@google.com
Labels: Subcomponent-Tools-emulator
Jul 17, 2012
Project Member #12 vs...@google.com
(Comment #10 doesn't show up on the Web UI, so copy/pasting it below):

I'm also hitting this problem. But I'm using an ATI card with fglrx driver. So maybe it's not a problem with NVIDIA GPUs.
(gdb) where
#0  0xcdf89cfe in pthread_join () from /usr/lib32/libpthread.so.0
#1  0xcbc0c903 in ?? () from /usr/lib32/xorg/modules/dri/swrast_dri.so
#2  0xcbbf1375 in ?? () from /usr/lib32/xorg/modules/dri/swrast_dri.so
#3  0xcbbca0f5 in ?? () from /usr/lib32/xorg/modules/dri/swrast_dri.so
#4  0xcbbca188 in ?? () from /usr/lib32/xorg/modules/dri/swrast_dri.so
#5  0xcbbc6465 in ?? () from /usr/lib32/xorg/modules/dri/swrast_dri.so
#6  0xccd5c409 in ?? () from /usr/lib32/libGL.so.1
#7  0xccd3c280 in ?? () from /usr/lib32/libGL.so.1
#8  0xccd386b0 in glXGetFBConfigs () from /usr/lib32/libGL.so.1
#9  0xcdfbc20e in EglOS::queryConfigs(_XDisplay*, int, std::list<EglConfig*, std::allocator<EglConfig*> >&) () from /home/henryhu/soft/android-sdk-linux_x86/tools/lib/../lib/libEGL_translator.so
#10 0xcdfc59bd in EglDisplay::initConfigurations(int) () from /home/henryhu/soft/android-sdk-linux_x86/tools/lib/../lib/libEGL_translator.so
#11 0xcdfc5a2d in EglDisplay::initialize(int) () from /home/henryhu/soft/android-sdk-linux_x86/tools/lib/../lib/libEGL_translator.so
#12 0xcdfbd297 in eglInitialize () from /home/henryhu/soft/android-sdk-linux_x86/tools/lib/../lib/libEGL_translator.so
#13 0xccdc8a75 in FrameBuffer::initialize(int, int) () from /home/henryhu/soft/android-sdk-linux_x86/tools/lib/libOpenglRender.so
#14 0xccdc4d44 in initOpenGLRenderer () from /home/henryhu/soft/android-sdk-linux_x86/tools/lib/libOpenglRender.so
#15 0x0806ff15 in android_startOpenglesRenderer ()
#16 0x08064b55 in qemu_main ()
#17 0x0804dda0 in main ()
Linux fanta 3.3.7-1-ARCH #1 SMP PREEMPT Tue May 22 00:26:26 CEST 2012 x86_64 GNU/Linux
I'm using ArchLinux 64-bit.
Jul 18, 2012
#15 gbalas....@gmail.com
Hello all,
I've the same problem... did you find something ?

On a Debian Squeeze x86_64.
Jul 18, 2012
#16 Nitro...@gmail.com
It's the main Android developpers who need to find something.
Jul 18, 2012
#17 gbalas....@gmail.com
Did you find something to by-pass that ?
Jul 18, 2012
#18 Henry.Hu...@gmail.com
I think that you may temporarily rename the tools/lib/libOpenglRender.so to workaround the problem. But it's just a workaround...
Jul 18, 2012
#19 lagos.t...@gmail.com
Renaming libOpenglRender.so did not work for me.  Going to try setting up a 32-bit box instead.
Jul 18, 2012
#20 andy.ghi...@gmail.com
Maybe someone would find this workaround helpful:
http://dev.blogs.nuxeo.com/2011/10/speeding-up-the-android-emulator.html
While I didn't test it myself, it seems doable.
Jul 19, 2012
#21 gbalas....@gmail.com
I just downgrade the ADT to v. 16... it's now working !
Jul 19, 2012
#22 zymurg...@gmail.com
gbalas.sup, where did you find the older version?
Jul 19, 2012
#24 gbalas....@gmail.com
here : http://dl.google.com/android/android-sdk_r16-linux.tgz
I delete my ADT, and replace it with the one on the SDK v16.
Then emulator -verbose -no-window -noaudio -avd my_android1.5
(i'm working on a headless linux server)


Jul 19, 2012
#25 ps.georg...@gmail.com
Hello. I have the same problem as well after upgrading to r20. I am running the SDK on Ubuntu 10.04 64bit, with an nvidia GPU. I have temporarily fixed the problem by using gbalas workaround. I have downloaded  http://dl.google.com/android/android-sdk_r18-linux.tgz and replaced the r20/tools folder with the the r18/tools folder. You may want to rename the r20/tools (e.g. tools.r20) instead of replacing it just for backup.

This is what I get when running the avd (r20) in verbose mode:

./emulator -avd SGS2 -verbose

emulator: found SDK root at /home/manbearpig/Android-SDK
emulator: Android virtual device file at: /home/manbearpig/.android/avd/SGS2.ini
emulator: virtual device content at /home/manbearpig/.android/avd/SGS2.avd
emulator: virtual device config file: /home/manbearpig/.android/avd/SGS2.avd/config.ini
emulator: using core hw config path: /home/manbearpig/.android/avd/SGS2.avd/hardware-qemu.ini
emulator: Found AVD target API level: 15
emulator: found skin 'WVGA800' in directory: /home/manbearpig/Android-SDK/platforms/android-15/skins
emulator: autoconfig: -skin WVGA800
emulator: autoconfig: -skindir /home/manbearpig/Android-SDK/platforms/android-15/skins
emulator: found skin-specific hardware.ini: /home/manbearpig/Android-SDK/platforms/android-15/skins/WVGA800/hardware.ini
emulator: keyset loaded from: /home/manbearpig/.android/default.keyset
emulator: trying to load skin file '/home/manbearpig/Android-SDK/platforms/android-15/skins/WVGA800/layout'
emulator: skin network speed: 'full'
emulator: skin network delay: 'none'
emulator: autoconfig: -kernel /home/manbearpig/Android-SDK/system-images/android-15/armeabi-v7a//kernel-qemu
emulator: autoconfig: -ramdisk /home/manbearpig/Android-SDK/system-images/android-15/armeabi-v7a//ramdisk.img
emulator: Using initial system image: /home/manbearpig/Android-SDK/system-images/android-15/armeabi-v7a//system.img
emulator: autoconfig: -data /home/manbearpig/.android/avd/SGS2.avd/userdata-qemu.img
emulator: autoconfig: -initdata /home/manbearpig/.android/avd/SGS2.avd/userdata.img
emulator: autoconfig: -cache /home/manbearpig/.android/avd/SGS2.avd/cache.img
emulator: autoconfig: -sdcard /home/manbearpig/.android/avd/SGS2.avd/sdcard.img
emulator: autoconfig: -snapstorage /home/manbearpig/.android/avd/SGS2.avd/snapshots.img
emulator: autoconfig: -snapshot default-boot
emulator: Physical RAM size: 512MB

Content of hardware configuration file:
  hw.cpu.arch = arm
  hw.cpu.model = cortex-a8
  hw.ramSize = 512
  hw.screen = touch
  hw.mainKeys = yes
  hw.trackBall = yes
  hw.keyboard = no
  hw.keyboard.lid = no
  hw.keyboard.charmap = qwerty2
  hw.dPad = yes
  hw.gsmModem = yes
  hw.gps = yes
  hw.battery = yes
  hw.accelerometer = yes
  hw.audioInput = yes
  hw.audioOutput = yes
  hw.sdCard = yes
  hw.sdCard.path = /home/manbearpig/.android/avd/SGS2.avd/sdcard.img
  disk.cachePartition = yes
  disk.cachePartition.path = /home/manbearpig/.android/avd/SGS2.avd/cache.img
  disk.cachePartition.size = 66m
  hw.lcd.width = 480
  hw.lcd.height = 800
  hw.lcd.depth = 16
  hw.lcd.density = 240
  hw.lcd.backlight = yes
  hw.gpu.enabled = no
  hw.camera.back = emulated
  hw.camera.front = none
  vm.heapSize = 48
  hw.sensors.proximity = yes
  hw.sensors.magnetic_field = yes
  hw.sensors.orientation = yes
  hw.sensors.temperature = yes
  kernel.path = /home/manbearpig/Android-SDK/system-images/android-15/armeabi-v7a//kernel-qemu
  kernel.parameters =  android.checkjni=1
  disk.ramdisk.path = /home/manbearpig/Android-SDK/system-images/android-15/armeabi-v7a//ramdisk.img
  disk.systemPartition.initPath = /home/manbearpig/Android-SDK/system-images/android-15/armeabi-v7a//system.img
  disk.systemPartition.size = 200m
  disk.dataPartition.path = /home/manbearpig/.android/avd/SGS2.avd/userdata-qemu.img
  disk.dataPartition.size = 200m
  disk.snapStorage.path = /home/manbearpig/.android/avd/SGS2.avd/snapshots.img
  avd.name = SGS2
.
QEMU options list:
emulator: argv[00] = "./emulator-arm"
emulator: argv[01] = "-loadvm"
emulator: argv[02] = "default-boot"
emulator: argv[03] = "-savevm-on-exit"
emulator: argv[04] = "default-boot"
emulator: argv[05] = "-android-hw"
emulator: argv[06] = "/home/manbearpig/.android/avd/SGS2.avd/hardware-qemu.ini"
Concatenated QEMU options:
 ./emulator-arm -loadvm default-boot -savevm-on-exit default-boot -android-hw /home/manbearpig/.android/avd/SGS2.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: Missing HW config backup file '/home/manbearpig/.android/avd/SGS2.avd/snapshots.img.default-boot.ini'
emulator: nand_add_dev: system,size=0xc800000,initf
Segmentation fault
Jul 20, 2012
#26 paul.ge...@gmail.com
Not sure if this helps anyone but I had a similar problem on Slackware 13.7- 64bit.
After installing 32 bit libraries the problem persisted.

"Initializing hardware OpenGLES emulation support"-"Segmentation fault"

Finally found I was able to start emulator by executing "emulator-arm" rather than "emulator" from command line.

Seems simple enough...it says "arm" in avd manager.  
Have to start avd from command line but it works!
Aug 2, 2012
#27 msar2...@gmail.com
I had the same problem with Ubuntu 10.04 . Running the regular "emulator" command wouldn't work. Nor would the "android" application.

Same error - just after the camera and OpenGLES part.

My system system was Ubuntu 10.04 with Nvidia Geforce FX5600
Aug 4, 2012
#28 privacyi...@gmail.com
Way to go, Paul. Following Paul's comment (#26) on an F16 based custom kernel x86_64, it works. Kind of.

It lets me run the emulator, but does highlight the problem.

If I run: ./emulator @Test22Froyo, this seqfaults. However: ./emulator-arm @Test22Froyo launches and runs. Started looking into the outputs of each...

If you compare the line of "Concatenated QEMU options:" in the verbose output, they are identical, right up to OpenGLES.

segfault ./emulator:
emulator: Initializing hardware OpenGLES emulation support
Segmentation fault

working ./emulator-arm:
emulator: Initializing hardware OpenGLES emulation support
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.
emulator: Kernel parameters: qemu.gles=0 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 ndns=1

So when you fire off emulator or via the GUI, it finds the OpenGL|ES support files from the tools package, but there's some problem in the implementation or in our systems drivers or whatever, and it crashes. However if you fire off emulator-arm, it can't locate them; so instead of crashing, it falls back to software rendering.

Not sure the steps required to fix this, but at least we know a workaround for now.

I will also try downgrading the tools to r16 or r18 as suggested above.
Aug 8, 2012
#29 joel.pal...@contuitus.com
Problem confirmed on CentOS 6.3, x86_64. Downgrading to r16 solves the problem.

Graphics card is nvidia geforce 670 with proprietary nvidia drivers.
Aug 10, 2012
#30 snico...@octo.com
#39-Ubuntu SMP Mon May 21 16:52:17 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux 

Confirmed. A really nice workaround is to remove the emulator executable and 

ln -s emulator-arm emulator

At least, that works like a charm. But I really suspect a command line argument handling error in emulator in R20.
Aug 16, 2012
#31 xiste...@gmail.com
Taking the advice from c18 (https://code.google.com/p/android/issues/detail?id=34233#c18) worked for me. I moved the file out of the way and now no seg fault happens. Now our Jenkins builds succeed again without issues.
Aug 29, 2012
#32 xming.song@gmail.com
emulator -avd JellyBean -verbose
emulator: found SDK root at /home/le/tools/android-sdk-linux
emulator: Android virtual device file at: /home/le/.android/avd/JellyBean.ini
emulator: virtual device content at /home/le/.android/avd/JellyBean.avd
emulator: virtual device config file: /home/le/.android/avd/JellyBean.avd/config.ini
emulator: using core hw config path: /home/le/.android/avd/JellyBean.avd/hardware-qemu.ini
emulator: Found AVD target API level: 16
emulator: found skin 'WVGA800' in directory: /home/le/tools/android-sdk-linux/platforms/android-16/skins
emulator: autoconfig: -skin WVGA800
emulator: autoconfig: -skindir /home/le/tools/android-sdk-linux/platforms/android-16/skins
emulator: found skin-specific hardware.ini: /home/le/tools/android-sdk-linux/platforms/android-16/skins/WVGA800/hardware.ini
emulator: keyset loaded from: /home/le/.android/default.keyset
emulator: trying to load skin file '/home/le/tools/android-sdk-linux/platforms/android-16/skins/WVGA800/layout'
emulator: skin network speed: 'full'
emulator: skin network delay: 'none'
emulator: autoconfig: -kernel /home/le/tools/android-sdk-linux/system-images/android-16/armeabi-v7a//kernel-qemu
emulator: autoconfig: -ramdisk /home/le/tools/android-sdk-linux/system-images/android-16/armeabi-v7a//ramdisk.img
emulator: Using initial system image: /home/le/tools/android-sdk-linux/system-images/android-16/armeabi-v7a//system.img
emulator: autoconfig: -data /home/le/.android/avd/JellyBean.avd/userdata-qemu.img
emulator: autoconfig: -initdata /home/le/.android/avd/JellyBean.avd/userdata.img
emulator: autoconfig: -cache /home/le/.android/avd/JellyBean.avd/cache.img
emulator: autoconfig: -sdcard /home/le/.android/avd/JellyBean.avd/sdcard.img
emulator: Physical RAM size: 512MB

Content of hardware configuration file:
  hw.cpu.arch = arm
  hw.cpu.model = cortex-a8
  hw.ramSize = 512
  hw.screen = touch
  hw.mainKeys = yes
  hw.trackBall = yes
  hw.keyboard = no
  hw.keyboard.lid = no
  hw.keyboard.charmap = qwerty2
  hw.dPad = yes
  hw.gsmModem = yes
  hw.gps = yes
  hw.battery = yes
  hw.accelerometer = yes
  hw.audioInput = yes
  hw.audioOutput = yes
  hw.sdCard = yes
  hw.sdCard.path = /home/le/.android/avd/JellyBean.avd/sdcard.img
  disk.cachePartition = yes
  disk.cachePartition.path = /home/le/.android/avd/JellyBean.avd/cache.img
  disk.cachePartition.size = 66m
  hw.lcd.width = 480
  hw.lcd.height = 800
  hw.lcd.depth = 16
  hw.lcd.density = 240
  hw.lcd.backlight = yes
  hw.gpu.enabled = no
  hw.camera.back = emulated
  hw.camera.front = none
  vm.heapSize = 48
  hw.sensors.proximity = yes
  hw.sensors.magnetic_field = yes
  hw.sensors.orientation = yes
  hw.sensors.temperature = yes
  kernel.path = /home/le/tools/android-sdk-linux/system-images/android-16/armeabi-v7a//kernel-qemu
  kernel.parameters =  android.checkjni=1
  disk.ramdisk.path = /home/le/tools/android-sdk-linux/system-images/android-16/armeabi-v7a//ramdisk.img
  disk.systemPartition.initPath = /home/le/tools/android-sdk-linux/system-images/android-16/armeabi-v7a//system.img
  disk.systemPartition.size = 200m
  disk.dataPartition.path = /home/le/.android/avd/JellyBean.avd/userdata-qemu.img
  disk.dataPartition.size = 200m
  avd.name = JellyBean
.
QEMU options list:
emulator: argv[00] = "/home/le/tools/android-sdk-linux/tools/emulator-arm"
emulator: argv[01] = "-android-hw"
emulator: argv[02] = "/home/le/.android/avd/JellyBean.avd/hardware-qemu.ini"
Concatenated QEMU options:
 /home/le/tools/android-sdk-linux/tools/emulator-arm -android-hw /home/le/.android/avd/JellyBean.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: nand_add_dev: system,size=0xc800000,initfile=/home/le/tools/android-sdk-linux/system-images/android-16/armeabi-v7a//system.img
emulator: mapping 'system' NAND image to /tmp/android-le/emulator-EJFzeS
emulator: rounding devsize up to a full eraseunit, now c810000

emulator: nand_add_dev: userdata,size=0xc800000,file=/home/le/.android/avd/JellyBean.avd/userdata-qemu.img
emulator: rounding devsize up to a full eraseunit, now c810000

emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '48m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '240'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '1'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'back'
emulator: nand_add_dev: cache,size=0x4200000,file=/home/le/.android/avd/JellyBean.avd/cache.img
emulator: Initializing hardware OpenGLES emulation support
Segmentation fault (core dumped)

Aug 29, 2012
Project Member #33 jesseh...@google.com
It's hard to be sure from the logs, but many of the crashes reported look similar to a bug I just fixed where the emulator would crash if it can't connect to the X server, even with '-no-window' or '-gpu off' flags. Until the sdk-tools are updated with the fix, if you're seeing this make sure you can run X programs (and ideally GL programs, like glxinfo or glxgears).
Status: Assigned
Aug 29, 2012
#34 xiste...@gmail.com
Referring to comment #33 ... I'd love to have X11 available, but unfortunately it is a server that this is running on for automated integration testing via Jenkins. The graphics card in the machine is not near powerful enough to run any GL programs, and using various "fake" X11 servers is just not acceptable.

As previously mentioned removing or renaming tools/lib/libOpenglRender.so actually fixes the issue as well and allows unattended builds to happen again on a server.
Aug 30, 2012
#35 gooo...@gmail.com
I have installed mesa-utils on my Ubuntu 11.04 and tried to run glxinfo:

$ glxinfo 
name of display: :0.0
Segmentation fault

$ uname -a
Linux goer-laptop 2.6.38-15-generic-pae #65-Ubuntu SMP Thu Jul 26 20:33:19 UTC 2012 i686 i686 i386 GNU/Linux


Sep 3, 2012
#36 lagos.t...@gmail.com
After hours and hours of experimentation, what worked for me was:

1) Rename the tools/lib/libOpenglRender.so to libOpenglRender.so.bak

2) Go to the Jenkins job configuration page.  Under "Build Environment" -> "Run an Android emulator during build" -> "Common emulator options", click "Advanced".  In the field "Emulator options" enter "-noaudio" (don't copy the quotes).

I have Jenkins configured to "Automatically install Android components when required".  To run my job Jenkins installs Android r20 tools, and android-15 platform.

I did not have to copy tools from a previous version e.g. r18.  I did not have to create a symlink called emulator that points to emulator-arm.

Sep 3, 2012
#37 lagos.t...@gmail.com
Forgot to mention I'm running Jenkins 1.479 on a headless Ubuntu 12.04 64-bit server.
Sep 3, 2012
#38 bwCod...@gmail.com
Same issue here, was working at one time on my system (linux/x86/nouveau), but I have made several changes since the last time I used it.  I switched from ArchLinux to Ubuntu 12.04, but I kept my home directory in tact.

@26 - using emulator-arm on command line worked for me as well, but how to do this with GUI tool?
Sep 20, 2012
#39 paolo.br...@gmail.com
Ubuntu 11.04 64 bit, NVIDIA gpu, SDK tools 20.0.3

Same here: the emulator doesn't start and terminates with a segmentation fault.
Referring to #33: glxinfo runs correctly.

Renaming libOpenglRender.so did the trick for me. 
Sep 23, 2012
#40 Xthe...@gmail.com
I also encountered this kind of crashing in starting Android emulator in Windows7 also. I had tried many solution such as...
- Rename resolution, skin
- Change Ram size

But none of them fixed my problem. However, rename libOpenglRender.dll fix my problem and emulator starting up without any crash anymore. THANK YO VERY MUCH !!
Oct 16, 2012
#42 cayle.sh...@gmail.com
I'm running Kubuntu 10.04 with a GeForce 9400 GT and had the same problem. I found the following helped:
 * Update my NVIDIA drivers (to 340.51).
This stopped the seg faults, but the system app in the emulator would crash intermittently (Launcher has stopped).
 * Use API 16 as the Android OS (I was using the version I was compiling against).
Things seem to run a bit more smoothly now, though the emulator is very slow.
 * Start the emulator with the -gpu on flag, i.e.
  $ ./emulator -gpu on @MyAVD
* Now things are running pretty snappily, and may even be usable for debugging.
Oct 17, 2012
#43 rori...@gmail.com
We fixed this problem, but it wasn't very nice. We found that the issue was related to the "usage stats" dialogue that now pops up when you start the emulator. Even starting it windowless from the command line via Jenkins on Ubunbtu 12.04 with our "xhost -" fix in place it still attempts to launch the "usage stats" dialogue, regardless of how many times we un tick the option.
Oct 27, 2012
#45 wever.jelle
Renaming libOpenglRender.so worked for me too (Linux Mint 32 bit).
Nov 2, 2012
#46 thomas.p...@gmail.com
Renaming libOpenglRender.dll worked for me too (Windows XP API 16 on DELL LATITUDE D530).
Nov 7, 2012
#47 emow...@gmail.com
Renaming worked for me, however, before that I tried to use the optirun utility which worked as well

System: Ubuntu 12.04 64bit, Nvidia Optimus
GFX Card: Nvidia Geforce 520MX
Intel i5
Nov 18, 2012
#48 mmur...@commonsware.com
I also needed to rename libOpenglRender.so for Ubuntu 11.10 with the R21 tools, R16 Platform-tools release, so this would appear to be not fixed at the present time.
Nov 27, 2012
#49 yaron.ro...@gmail.com
None of the above worked.

What did work for me: using emulator64-arm.
Nov 27, 2012
#50 yaron.ro...@gmail.com
emulator64-arm worked for me.
Dec 11, 2012
#51 SyedaTas...@gmail.com
I have faced a similar problem in win 8 64 bit with ati mobility radeon graphics card. 
Upgrading my graphics card worked for me.

Thanks a lot to everyone.
Dec 25, 2012
#52 michaels...@gmail.com
Renaming libOpenglRender.dll worked for me on Windows 8 64-bit.
Jan 11, 2013
#53 slittieb...@kickballinc.com
Elsewhere (Stack Overflow I think) I found a reference to the emulator being moved to a different screen (ie, multiple displays).  I forget which config file it was to delete, but keeping it on the primary display definitely fixed my problem, no other changes, and it immediately starts segfaulting if I move it to the secondary display.
Jan 23, 2013
#54 eric.ke...@gmail.com
Happening in Mac OS X too. SDK r21.  Attaching console output and crash report details.  thanks.

Last line of console output shows that it's applying a scaling factor, but this happens even without scaling.
console_and_crash_report.txt
52.5 KB   View   Download
Jan 24, 2013
#55 eric.ke...@gmail.com
glxinfo and glxgears run just fine in OS X, but still getting seg fault.
Jan 25, 2013
#56 eric.ke...@gmail.com
Update:  I noticed comment #53 after I posted my comment about faulting on OS X.  Unplugging the monitor from my macbook pro did the trick.  Works on primary display.
Jan 31, 2013
#57 chris@orr.me.uk
Note that you don't even have to fully start the emulator itself.
Running "emulator -snapshot-list -no-window -avd foo" is enough to segfault, just after the snapshot table header has been printed to screen.

Running the same command with "emulator-arm" works fine (on Ubuntu 12.10, 64-bit).

Trying all the "emulator" binaries:
emulator         segfault
emulator64-arm   segfault
emulator64-mips  segfault
emulator64-x86   segfault
emulator-arm     OK
emulator-mips    OK
emulator-x86     OK
Feb 2, 2013
#58 krismici...@gmail.com
I had a similar situation.  I don't believe this has anything to do with r20, this happens to me on r16.  I had an old version of ADT on a Xeon server:

Linux version 2.6.18-308.8.2.el5 (mockbuild@x86-001.build.bos.redhat.com) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-52)) #1 SMP Tue May 29 11:54:17 EDT 2012

This was a machine I'm sshing into, glxgears, Xclock, etc.., all work fine with X forwarding, but I get a segfault upon openGLES startup.  The advice in comment #32 helped, moving the shared object does the trick.

Feb 15, 2013
#59 zhwxwxh@gmail.com
mv tools/lib/libOpenglRender.so tools/lib/libOpenglRender.so.xxx
Apr 5, 2013
#60 h...@josefson.org
Here is a wrapper workaround for emulator which Works For Me(TM), solving the issue where Jenkins and the Android Emulator Plugin get a segfault from `emulator -snapshot-list`:

#!/bin/bash
##############################################################################
# Avoids segfault which may happen when running `emulator -snapshot-list`.
#
# For background and instructions, please see
# https://github.com/hugojosefson/android-emulator-wrapper
##############################################################################
if [[ "$1" = "-snapshot-list" ]];then
   exec "$(dirname $0)"/emulator-x86 "$@"
else
   exec "$(dirname $0)"/emulator.bak "$@"
fi
Jan 29, 2014
#62 warm...@gmail.com
THANK YOU VERY MUCH!!! After more than a week trying everything here and there renaming all the lib*.* files from <sdk-installation-folder>/tools/lib/ to lib*.*.xxx made the emulator to start. I was right, all the emulator crashing issue was related to OpenGLES: code.google.com/p/android/issues/detail?id=33336 & code.google.com/p/android/issues/detail?id=28601

Btw, I'm not using Ubuntu but Windows 7 SP1 X64.
Jan 29, 2014
Project Member #63 di...@android.com
For the record, the -snapshot-list crash has been fixed by https://android-review.googlesource.com/#/c/80431/ and will be part of the next tools release.

In the meantime, you can work around it by launching the 32-bit emulator (i.e. emulator -force-32bit) on Linux and Darwin. Windows was not impacted.

The other bugs describe still persist, and I'm also looking at them, so this issue remains opened.

However, please file individual issues when you encounter a new crash. Thanks :-)

Owner: di...@android.com
Cc: jesseh...@google.com to...@android.com
Sign in to add a comment

Powered by Google Project Hosting