Raspberry Pi Stack Exchange is a question and answer site for users and developers of hardware and software for Raspberry Pi. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Reading different posts and Can I emulate x86 to run Windows 95? it seems to be possible to some extent to simulate x86 CPU.

In my special case I want to run a Teamspeak server, which isn't provided for ARM at the moment. Is it possible to emulate Teamspeak server?

I know there exists the native alternative mumble. But that is no alternative for me, because in the game community I'm in Teamspeak 3 is the only one used.

share|improve this question
If you have to emulate x86 then I doubt you will get the performance you desire. – Jivings Jan 5 '13 at 20:17
Let alone the fact real time sound processing in an emulated environment. I think you can better ask the developers of TeamSpeak if (if possible) they can port it to ARM. I did however read a story that some Russian created a x86 emulator on ARM, but I think it is not available yet. – ikku Jan 6 '13 at 12:23
re your edit: Well, if you have to host the server, then you decide which client the others should use. If they oppose, they have to host it themselves - Teamspeak simply won't work at the Raspberry Pi at the moment. There is no sensible reason against mumble - it's free, open source, portable, great quality, low resource usage etc – Tobias Kienzler Jan 8 '13 at 15:33
anyway, maybe wiki.winehq.org/ARM is an interesting read for you... – Tobias Kienzler Jan 8 '13 at 16:27
@TobiasKienzler I don't have to host the server. I volunteer to host the server. Everyone I know of in the German World of Warcraft community uses Teamspeak. Even when you get your guild members to use mumble, you often have visitors, which also only know Teamspeak. – keiki Jan 9 '13 at 8:16
up vote 21 down vote accepted

I got Teamspeak 3 running using qemu running a x86 Debian squeeze. There is some room for improvement for sure, but for now that's what worked for me. I hope I didn't forget something.

First of all thanks to Dietmar and meigrafd of the raspberry pi forum. Without their work I wouldn't have succeeded.

How to

Installing qemu

  1. We need some software apt-get install git zlib1g-dev libsdl1.2-dev
  2. Download the source of qemu (wget already patched by Dietmar for Raspberry pi. It is qemu 0.15.50 from Thoronir, because the support for ARM host seems to be even worse with the current version.
  3. Unrar it unrar x qemuADLI.part1.rar. You have to use the unrar non-free version (Link to howto)
  4. Configure what to compile (takes about a minute) ./configure --target-list="i386-softmmu" --enable-sdl --extra-cflags="-O3 -mfloat-abi=hard -mfpu=vfp -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -march=armv6zk" --audio-drv-list="alsa oss sdl pa" --audio-card-list="ac97 es1370 sb16 cs4231a adlib gus hda"
  5. Now compile make (takes half an hour at least)
  6. Now install make install
  7. Now qemu is installed successfully.

Preparing Debian Image (using Windows as host)

  1. Download and install qemu for Windows (Link)

  2. Download Debian netinstall image (squeeze). I used squeeze, but wheezy might be also good.

  3. Create image using qemu-img.exe create -f qcow2 G:\debian.img 1500M(smaller size should be suffient too)

  4. Install debian x86. I recommend to choose no meta package. qemu -cpu 486 -hda G:\debian.img -cdrom G:\debian-6.0.4-i386-netinst.iso -boot d -m 512 -smp 1

  5. After installation run the qemu command again, but with some changes qemu -cpu 486 -hda G:\debian.img -boot d -m 512 -smp 1 -redir tcp:9022::22 -redir udp:1234::9987. -redir is used to redirect the network from the guest to the hosts ports.

  6. Now install less and your favorite editor (like nano, vim,etc.) you like to use apt-get install less vim

  7. Install OpenSSH Server apt-get install openssh-server

  8. Install Teamspeak like you usually would do.

  9. Connect to teamspeak from you windows host using localhost:1234 (remember above we redirected the port)

  10. Test to connect to it via ssh/putty using localhost:9022

  11. Shutdown shutdown -hP now the image and copy it via scp(winscp) to your pi.

Run it on the Pi (Use a SSH for the following commands)

  1. Get the missing qemu Bios wget -O /usr/share/qemu/sgabios.bin http://qemu.weilnetz.de/w32/2012-06-28/sgabios.bin

  2. Start it! qemu -cpu 486 -hda debian.img -m 150m -smp 1 -redir tcp:9022::22 -redir udp:9055::9987 --nographic

  3. If you get a memory error then try it a few times.

  4. If it says starting Grub then wait some minutes (it's booting in the background, but you will never get a prompt here!). Now login with a other SSH terminal to login 'ssh root@localhost -p 9022'

  5. Now start Teamspeak and try to log in on port 9055 of the Pi.

  6. Shutdown again the qemu guest.

  7. Start it again but add -daemonize, so it runs even when you log off. I also made a script to help me.


My Pi is the 256 MB version overclocked to 1000 Mhz using raspi-config.

The Pi runs constantly at 70% CPU load average. It varies between 50% (using 700 MHz) and nearly 100% using 1000 MHz. But the load shows "0.77, 0.83, 0.80", which is okay.

In the future I hope to either use a native Teamspeak version (my hope is still up) or to use qemu in user mode and better performance with more current version. Time will tell :)

I have yet to test the performance of teamspeak itself, if it is usable for gaming situations. I noticed some milliseconds latence overhead, but not too much to worry yet.

share|improve this answer
+1 Nice work :) – Jivings Jan 13 '13 at 17:49
Neat indeed! I guess I was underestimating the Pi's "300 MHz Pentium equivalence"... – Tobias Kienzler Jan 14 '13 at 13:08
I still have to look out for the performance. How many teamspeak slots it can handle that way. – keiki Jan 14 '13 at 13:29
Dietmar already has succeded to get user mode running in current qemu version with a big performance boost for wine. – keiki Jan 15 '13 at 14:35
Do you have more recent information about that? – The Wavelength Apr 13 '14 at 13:22

Consider using Murmur (the server for Mumble) instead, which can be run natively, as has been done on the Pi already, while there are also x86 versions for Linux, Mac, Windows, iOS, ...

share|improve this answer

with the RPI 2 that recently was released it is possible to install a working teamspeak server by using linaro ubuntu and exagear desktop (the last one you can buy for 30 dollars).

its a straight forward installation:

  1. install linaro ubuntu

  2. buy and install exagear (which i had to do manually, but you will be able to do it also easily)

  3. download and unpack teamspeak3-server_linux-x86- in your /home/linaro/downloads map 4: start exagear 5: start teamspeak

and your up and running :) (oh, and don't forget to do a port forwarding if you are behind a firewall)

share|improve this answer

protected by goldilocks Dec 24 '15 at 13:55

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.