Thursday, September 17, 2009

non-x86 Second Life targets?

I tried to ask on the SL forums, but for some reason, the "preview" and "post" were broken.

Has anyone tried to build the Linux SL client for something other than the x86? I ask because ARM is making noises about dual and quad core 2 GHz ARM CPUs for netbooks and smartbooks, and the nVidia Ion chipset-based netbooks that folks like Samsung and Lenovo have been promising don't seem to be showing up.

I really would love something small, lightweight, and portable on which I can run SL reasonably. ARM also has some OpenGL capable graphics hardware (look for sample videos on YouTube).


Cristopher Lefavre said...


Boy Lane has a version of the Rainbow viewer 1.19 build optimized for Intel Atom. But it's a windows version only I am afraid:-(

It works pretty smooth on my msi wind; really possible to take SL everywhere with this gadget:-)

Unknown said...
This comment has been removed by the author.
hwertz said...

I know this is an old post... but it's now 2016, and I do have a quad core ARM with strong video card (a Chromebook with a Tegra K1), running Ubuntu off SD card. So I looked into this.

I had secondlife running on my previous (Intel) notebook, but after some SL update it gave an illegal instruction error. I assumed it was (despite specs still saying SSE2 required) using some newer instructions somewhere and didn't look into it since I was switching to the ARM about then anyway.

So I've looked into ARM build. It's doable but difficult. At first glance, I saw the amount of SSE/SSE2 code (and a bit of SSE3.. that's why it quit running on the previous computer i had) and assumed it would not be portable to ARM. BUT! It's using "Intel intrinsics" header files to do the SSE/SSE2 etc. (so instead of having ugly inline assembly in your program, you have sse2foo(x,y,z) and the ugly inline assembly is in some header file...). ARM NEON has NEON intrinsics files, and I found a SSE2NEON.h header online that implements a portion of the Intel intrinsics as NEON intrinsics, using ARM NEON intrinsics headers. But it's not complete, my recollection is it implemented about 2/3rds of the intrinsics Second Life used and not the other 1/3rd. They looked doable but I got sidetracked.