Com a ajuda de um amigo, executamos com sucesso o servidor TeamSpeak que não possui código fonte e nenhum binário para armhf
em raspberry pi 3 usando QEMU no modo de usuário. Nós seguimos parcialmente este guia:
Algumas informações:
QEMU version: 2.8 build from source configured like this (./configure --target-list=i386-linux-user).
TeamSpeak version: x86-3.0.10.1
O problema surge quando tento rodar versões mais novas do TeamSpeak como 2.0.12.4 ou a última versão do TS . Quando eu inicio o TS, ele começa a fazer alguma coisa (um pouco da saída do TeamSpeak chega na tela), mas depois de alguns segundos ele falha com esse erro:
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
root@teamspeak:/opt/teamspeak3-server_linux_x86# ./ts3server_minimal_runscript.sh
2017-01-09 19:14:40.895673|INFO |ServerLibPriv | |TeamSpeak 3 Server 3.0.13.6 (2016-11-08 08:48:33)
2017-01-09 19:14:40.928272|INFO |ServerLibPriv | |SystemInformation: Linux 4.4.34-v7+ #930 SMP Wed Nov 23 15:20:41 GMT 2016 i686 Binary: 32bit
2017-01-09 19:14:40.930775|WARNING |ServerLibPriv | |The system locale is set to "C" this can cause unexpected behavior. We advice you to repair your locale!
2017-01-09 19:14:41.002472|INFO |DatabaseQuery | |dbPlugin name: SQLite3 plugin, Version 3, (c)TeamSpeak Systems GmbH
2017-01-09 19:14:41.050215|INFO |DatabaseQuery | |dbPlugin version: 3.11.1
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault
Não sei de onde vem esse erro.
Eu tenho que mencionar que eu tentei uma versão mais antiga do QEMU (aquela nos repositórios que é da idade média, versão 1.2), e poderia rodar as versões mais novas e antigas de TS (mas eles falham após alguns minutos, o que torna sem escolha ).
As dependências que instalei: libglib2.0-dev libfdt-dev libpixman-1-dev zlib1g-dev binfmt-support libc6:i386
.
Eu também devo mencionar que estou executando tudo em Docker container
.
Eu realmente aprecio qualquer ajuda para resolver esse problema para poder executar as versões mais recentes do TS.