Giter Club home page Giter Club logo

box86's Introduction

Official logo

Linux Userspace x86 Emulator with a twist

View changelog | 中文 | Українська | Report an error

build stars forks contributors prs issues


Box86 lets you run x86 Linux programs (such as games) on non-x86 Linux systems, like ARM (host system needs to be 32bit little-endian).

You NEED a 32-bit subsystem to run and build Box86. Box86 is useless on 64-bit only systems. Also, you NEED a 32-bit toolchain to build Box86. A toolchain that only supports 64-bit will not compile Box86, and you'll get errors (typically on aarch64, you get "-marm" not recognized, and you'll need a multiarch or chroot environment).

Because Box86 uses the native versions of some "system" libraries, like libc, libm, SDL, and OpenGL, it's easy to integrate and use with most applications, and performance can be surprisingly high in many cases. Take a look at those bench analysis for an example here. That also means that you will need a 32bits userspace on 64bits OS, like armhf on top an aarch64 64bits OS.

Most x86 Games need OpenGL, so on ARM platforms a solution like gl4es might be necessary. (Some ARM platforms only support OpenGL ES and/or their OpenGL implementation is dodgy. (see OpenGL on Android))

Box86 now integrates a DynaRec (dynamic recompiler) for the ARM platform, providing a speed boost between 5 to 10 times faster than only using the interpreter. Some high level information on how the Dynarec work can be found here.

Many games just work without much tweaking, for example: WorldOfGoo, Airline Tycoon Deluxe, and FTL. Many of the GameMaker Linux games also run fine. (there's a long list, among them are UNDERTALE, A Risk of Rain, and Cook Serve Delicious). Unity3D games also works fine, but the OpenGL requirement might be an issue on some ARM platforms.

If you are serious about developing Box86, you should install ccache and build Box86 with it. (Use ccmake for example.) To enable TRACE (i.e. dumping to stdout all individual x86 instructions executed, with dump of registers), you'll also need Zydis library available on your system.

Some x86 internal opcodes use parts of "Realmode X86 Emulator Library", see x86primop.c for copyright details


Compiling/Installation

Compilation instructions can be found here
Instructions for installing Wine for Box86 can be found here


Here are 6 videos, the first 2 videos are videos of "Airline Tycoon Deluxe" and "Heretic 2" running on a GigaHertz OpenPandora (the second one is using the dynarec), and the next 2 videos are videos of of "Bit.Trip.Runner" and "Neverwinter Night" running on an ODroid XU4 (without dynarec), and the last 2 videos are on on a Pi4: Shovel Knight (video from @ITotalJustice) and Freedom Planet (video from @djazz), also without dynarec.

Play on Youtube Play on Youtube Play on Youtube Play on Youtube Play on Youtube Play on Youtube

You can find many more Box86 videos on the MicroLinux, Pi Labs or The Byteman YouTube channels.

Compatibility list is here: https://github.com/ptitSeb/box86-compatibility-list/issues

Logo and Icon made by @grayduck, thanks!

Note that this project is not to be mistaken with 86box, a nice "Full system" emulator specialized in early (to fairly recent) PC hardware.


Usage

There are a few environment variables to control the behaviour of Box86.

See here for all environment variables and what they do.

Note: Box86's Dynarec uses a mechanism with Memory Protection and a SegFault signal handler to handle JIT code. In simpler terms, if you want to use GDB to debug a running program that use JIT'd code (like mono/Unity3D), you will still have many "normal" segfaults triggering. It is suggested to use something like handle SIGSEGV nostop in GDB to not stop at each segfault, and maybe put a breakpoint inside my_box86signalhandler in signals.c if you want to trap SegFaults.


Version history

The change log is available here


Notes about 64-bit platforms

Because Box86 works by directly translating function calls from x86 to host system, the host system (the one Box86 is running on) needs to have 32-bit libraries. Box86 doesn't include any 32-bit <-> 64-bit translation. So basically, to run Box86 on, for example, an ARM64 platform, you will need to build Box86 for ARM 32-bit, and also need to have a chroot with 32-bit libraries.

If you look at a 64bits version of box86, look at Box64: this one is able to run x86_64 binaries on 64-bit platforms. But note that you still need Box86 (and a 32-bit chroot) to run x86 binaries (as it also happens on actual x86_64 Linux that need x86 libs and binary on multiarch to run).


Notes about Box86 configuration

Box86 now have configurations files. There are 2 files loaded. /etc/box4.box86rc and ~/.box86rc. Both files have the same syntax, and is basicaly an ini files. Section in square brakets define the process name, and the rest is the env. var. to set. Looke at Usage for detail on what parameters can be put. Box86 comes with a default file that should be installed for better stability. The file in in system/box86.box86rc and should be installed to /etc/box86.box86rc If, for some reasons, you don't want to install that file here, at least copy it to ~/.box86rc or some game may not function correctly. Note that the priority is: ~/.box86rc > /etc/box86.box86rc > command line So, your settings in ~/.box86rc may override the setting from your command line...


Notes about Unity game emulation

Running Unity games should generaly work now, but you should also note that many Unity3D games require OpenGL 3+ which can be tricky to provide on ARM SBC (single-board computers) for now. Hint: on Pi4, use MESA_GL_VERSION_OVERRIDE=3.2 and with Panfrost use PAN_MESA_DEBUG=gl3 to use higher profile if the game starts then quits before showing anything.


Notes about Steam

Linux Steam's can run now with box86. but you also need box64 for it to completly usable. It is advised to run steam in the Small mode, as it use the less memory, but steamwebhelper (a 64bits process) will still be loaded even if not used. The login screen cannot run without steamwebhelper, and will just show a blank windows without box64 properly setup in the system. File note, Steam will use a lot of memory, and barely fit on system with 4GB of RAM. It will not work anymore on system with less memory (as a workaround, create a swap file, login and check "remember me", the use box64rc to disable steamwebhelper and run only in small mode without swap after the 1st login) Final note: the Steam BigPicture will work, but also need steamwebhelper (and so box64), and lots of memory. It will not start on system with only 4GB of RAM without swap.

  • If you have trouble installing Steam, you can find install_steam.sh in the root folder of the box86 repo. This simple script will download and install steam in your home folder, and then create a shortcut to steam in /usr/local/bin (and for this it will ask for sudo permission). Simply use steam to launch once it's installed. Note that the installation, being in the Home folder, will only work for a single user. Don't use this script if you need a multi-user installation.
  • To avoid the "libc.so.6 is absent" message, you can use STEAMOS=1 and STEAM_RUNTIME=1 as environment variables (it's automatically there if you used the install_steam.sh script)

If you have issue with steam starting, with steamwebhelper not starting, you'll need to start steam with -cef-disable-gpu or -cef-disable-gpu-compositor.


Notes about Wine

Wine is now supported. Wine integrated program all runs, and many windows programs and games also runs fine. Don't forget most Windows games use Direct3D, this may require a complete OpenGL driver and a as high profile as possible (and gl4es with ES2 backend have issue with Wine for now). Note: if you plan to use box86 with Wine on Raspberry Pi 3 or earlier, those models use a default OS that have a kernel with a 2/2 Split (meaning 2G of space for user program, and 2G of space for the Kernel). This is not compatible with Wine programs that needs to access memory > 2Gb address. So you'll need to reconfigure your kernel for a 3G/1G split.


Notes about Vulkan

Box86 already wrap Vulkan. If your system has a 32bits Vulkan driver, box86 will use it when needed. Profile 1.0, 1.1, 1.2 and 1.3, with some extensions, should be OK. DXVK, including the 2.0, works. I know some demos work on Pi4 (Sascha Willems demos build for x86 work the same as if build on armhf directly). Note that the Vulkan driver of the Pi4 DOES NOT support dxvk for now (wine DirectX->Vulkan wrapper). It's not a box86 issue, it's missing extensions (hardware support) and a few other things that make dxvk not working on pi4. On Panfrost side, PanVK is a bit young and I haven't tested dxvk with it yet.


Final word

I want to thank everyone who has contributed to box86 development. There are many ways to contribute: code, financial, hardware and advertisement! So, in no particular order, I want to thank:

And I also thank the many other people who participated even once in the project.

(If you use Box86 in your project, please don't forget to mention it!)

box86's People

Contributors

afonso360 avatar asppsa avatar daitj avatar hagb avatar heasterian avatar icenowy avatar ilya114 avatar io12 avatar jai-jap avatar johnnyonflame avatar kreitinnsoftware avatar leonpano2006 avatar linkmauve avatar liuli0217 avatar m-ht avatar mcagabe19 avatar meveric avatar michaing avatar moldytzu avatar ptitseb avatar queenpew avatar radiicall avatar rajdakin avatar ryanfortner avatar seas0 avatar spacingbat3 avatar valdikss avatar wannacu avatar wheezye avatar ye-yeshun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

box86's Issues

SDL_BuildAudioCVT / SDL_ConvertAudio in SDL1

Is there a reason that functions SDL_BuildAudioCVT / SDL_ConvertAudio in SDL2 are using native functions, but in SDL1 they are "implemented" using my_SDL_BuildAudioCVT / my_SDL_ConvertAudio (which just print a text that the function is unimplemented) ?

Error: Unsupported Syscall 0x2Dh (45)

Hey thanks again for the cmake fixes, it compiled fine. But now when I try to run my program I'm getting this

pi@raspberrypi:~/Documents/Carla_2.0.0-linux32 $ ./box86 Carla
Using default BOX86_LD_LIBRARY_PATH: ./:lib/
Using default BOX86_PATH: ./:bin/
Counted 45 Env var
Looking for Carla
Error: Unsupported Syscall 0x2Dh (45)

I hope I don't have to keep coming back to make you add more unknown syscalls. Is there any way I can learn to add them by myself as I find them if that's the case?

DYNAREC Regression causing segfault.

Commit bac874c caused regressions on both momodora_reverie_under_the_moonlight_1_062_24682.sh and shovel_knight_treasure_trove_4_0a_34523.sh for whatever reason.

The only change in log between fdf0aaa (working) & bac874c (error) on Momodora

create stream 300016
create stream 300017
create stream 300018
create stream 300019
create stream 300020
create stream 300021
create stream 300022
create stream 300023
create stream 300024
create stream 300025
MAP LOADING DS MAP CREATING
config.ini readed
stringMapPreload() called.
Set Fullscreen 1
sync = 1
**** GLX Extensions ***
GLX_ARB_create_context GLX_ARB_create_context_no_error GLX_ARB_create_context_profile GLX_ARB_fbconfig_float GLX_ARB_framebuffer_sRGB GLX_ARB_get_proc_address GLX_ARB_multisample GLX_EXT_buffer_age GLX_EXT_create_context_es2_profile GLX_EXT_create_context_es_profile GLX_EXT_fbconfig_packed_float GLX_EXT_framebuffer_sRGB GLX_EXT_import_context GLX_EXT_texture_from_pixmap GLX_EXT_visual_info GLX_EXT_visual_rating GLX_INTEL_swap_event GLX_MESA_copy_sub_buffer GLX_MESA_query_renderer GLX_MESA_swap_control GLX_OML_swap_method GLX_OML_sync_control GLX_SGIS_multisample GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGIX_visual_select_group GLX_SGI_make_current_read GLX_SGI_swap_control GLX_SGI_video_sync 
Checking for GLX_EXT_swap_control
Checking for GLX_SGI_swap_control
Vsync: GLX_SGI
enabling vsync.
vsync: 1
buffer compatible
initialized analytics
ERROR: enter a number as value
gamepad get device count: 4
gamepad connected on slot 0
Input Mode set to: Controller Profile A
Changing Fog to: 99
Changing Fog to: 0
Changing music.
StartGame() - DONE
Total memory used = 41268935(0x08ae7079) bytes
**********************************.
Entering main loop.
**********************************.
gamepad get device count: 4
gamepad connected on slot 0
Input Mode set to: Controller Profile A

But newer version segfault directly.

create stream 300017
create stream 3000
Erreur de segmentation

Shovel Knight working:

Warning, call to pthread_attr_setschedparam(...) ignored
Warning, call to pthread_attr_setschedparam(...) ignored
Warning, call to pthread_attr_setschedparam(...) ignored
Warning, call to pthread_attr_setschedparam(...) ignored
Note: File effects/flareoExplosionSpecter.anb was already loaded
Shutdown
GameShutdown
Threads Shutdown
Force Exit

And crashing:

Warning, call to pthread_attr_setschedparam(...) ignored
Warning, call to pthread_attr_setschedparam(...) ignored
Warning, call to pthread_attr_setschedparam(...) ignored
Warning, call to pthread_attr_setschedparam(...) ignored
ycAssert! ../engine/src/ycTexture.cpp: 239
if(!(ret == 0)): 
WARN: 

Assertion failure at Break (../engine/src/ycAssert.cpp:101), triggered 1 time:
  '0'

Abort/Break/Retry/Ignore/AlwaysIgnore? [abriA] :

No other relevant change into the default log I think, but I still uploaded them if needed.

momodora_1_working_fdf0aaa.zip
momodora_1_working_fdf0aaa_debug.zip
momodora_2_bissect_bac874c.zip
momodora_2_bissect_bac874c_debug.zip
momodora_3_upstream_8affc55.zip
momodora_3_upstream_8affc55_debug.zip

shovelknight_1_working_fdf0aaa.zip
shovelknight_1_working_fdf0aaa_debug.zip
shovelknight_2_bissect_bac874c.zip
shovelknight_2_bissect_bac874c_debug.zip
shovelknight_3_upstream_8affc55.zip
shovelknight_3_upstream_8affc55_debug.zip

Another question about this great project

Hi petit, could be this have any complementation with wine arm just like exagear? Didt try exagear before. But i will test this project againts everything. Its a bit sad than notaz its a bit dissapeared from the arm atmosphere. He was really kind of helping me with his binaries and wine tweaks.

Offtopic. Your jedy outcast runs grewat on the pi. It could runwith beter resolution but it demands a lot of vram
https://youtu.be/oUFC0sK8a1E

I will move on with n2 when it released. Hope than panfrost arrive soon to that lovely arm sbc. Anholt did a great job on vc4 as you see.

La-Maluna: fails to boot, missing symbols.

The output when trying to run the game.

BOX86_LD_LIBRARY_PATH=.:lib:lib/lib:x86:lib32:/usr/i686-linux-gnu/lib:/usr/lib/arm-linux-gnueabihf box86 LaMulana.bin.x86 
BOX86_LD_LIBRARY_PATH: ./:lib/:lib/lib/:x86/:lib32/:/usr/i686-linux-gnu/lib/:/usr/lib/arm-linux-gnueabihf/
Using default BOX86_PATH: ./:bin/
Counted 45 Env var
Looking for LaMulana.bin.x86
Using native(wrapped) libpthread.so.0
Using native(wrapped) libSDL2-2.0.so.0
Using native(wrapped) libopenal.so.1
Using native(wrapped) libGL.so.1
Using emulated /usr/i686-linux-gnu/lib/libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) librt.so.1
Using emulated /usr/i686-linux-gnu/lib/libgcc_s.so.1
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb5d42198 (0x6b676)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb5d42474 (0x6c1e6)
Error: Symbol wprintf not found, cannot apply R_386_JMP_SLOT @0x8448e6c (0x80c130e)
Error: Symbol SDL_wcslen not found, cannot apply R_386_JMP_SLOT @0x8448f78 (0x80c173e)
Segmentation fault

and the bt

#0  0xa8056f6c in myStackAlign (fmt=fmt@entry=0x400 <error: Cannot access memory at address 0x400>, st=0x83d89dc, mystack=0xa80cbf08) at /home/pi/box86/src/libtools/myalign.c:20
#1  0xa8065a3c in my2_SDL_snprintf (emu=emu@entry=0xa80cbb10, buff=0xb6c84e90, fmt=0x400, b=<optimized out>, V=...) at /home/pi/box86/src/wrapped/wrappedsdl2.c:605
#2  0xa801d118 in iFEpupVV (emu=emu@entry=0xa80cbb10, fcn=fcn@entry=2818988572) at /home/pi/box86/src/wrapped/generated/wrapper.c:1518
#3  0xa8055058 in x86Int3 (emu=0xa80cbb10) at /home/pi/box86/src/emu/x86int3.c:186
#4  0xa8037134 in Run (emu=0xa80cbb10) at /home/pi/box86/src/emu/x86run.c:865
#5  0xa8006bd4 in main (argc=<optimized out>, argv=<optimized out>, env=<optimized out>) at /home/pi/box86/src/main.c:425

Running executables from a Debian chroot

I've tried running some executables from a first-stage bootstrapped i386 Debian chroot created using this script.

However, most programs give errors like these:

$ BOX86_LD_LIBRARY_PATH=usr/lib/i386-linux-gnu /tmp/box86/build/box86 bin/echo
BOX86_LD_LIBRARY_PATH: usr/lib/i386-linux-gnu/
Using default BOX86_PATH: ./:bin/
Counted 67 Env var
Looking for bin/echo
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Error: Symbol error not found, cannot apply R_386_JMP_SLOT @0xb6efe054 (0x1156)
Error: Symbol __overflow not found, cannot apply R_386_JMP_SLOT @0xb6f10094 (0x1256)
[1]    31884 segmentation fault (core dumped)

I tried commenting out libc from library_list.h, but then I get these errors:

$ BOX86_LD_LIBRARY_PATH=usr/lib/i386-linux-gnu /tmp/box86/build/box86 bin/echo
BOX86_LD_LIBRARY_PATH: usr/lib/i386-linux-gnu/
Using default BOX86_PATH: ./:bin/
Counted 67 Env var
Looking for bin/echo
Using emulated usr/lib/i386-linux-gnu/libc.so.6
Using native(wrapped) ld-linux.so.2
Warning, don't know of to handle rel #1306 type: R_386_TLS_TPOFF (0xb6bcfe5c)
Warning, don't know of to handle rel #1307 type: R_386_TLS_TPOFF (0xb6bcfe60)
Warning, don't know of to handle rel #1308 type: R_386_TLS_TPOFF (0xb6bcfe64)
Warning, don't know of to handle rel #1309 type: R_386_TLS_TPOFF (0xb6bcfe68)
Warning, don't know of to handle rel #1310 type: R_386_TLS_TPOFF (0xb6bcfe6c)
Warning, don't know of to handle rel #1311 type: R_386_TLS_TPOFF (0xb6bcfe70)
Warning, don't know of to handle rel #1312 type: R_386_TLS_TPOFF (0xb6bcfe74)
Warning, don't know of to handle rel #1313 type: R_386_TLS_TPOFF (0xb6bcfe78)
Warning, don't know of to handle rel #1314 type: R_386_TLS_TPOFF (0xb6bcfe7c)
Warning, don't know of to handle rel #1315 type: R_386_TLS_TPOFF (0xb6bcfe80)
Warning, don't know of to handle rel #1316 type: R_386_TLS_TPOFF (0xb6bcfe94)
Warning, don't know of to handle rel #1317 type: R_386_TLS_TPOFF (0xb6bcfebc)
Warning, don't know of to handle rel #1318 type: R_386_TLS_TPOFF (0xb6bcfeec)
Warning, don't know of to handle rel #1319 type: R_386_TLS_TPOFF (0xb6bcfef4)
Warning, don't know of to handle rel #1320 type: R_386_TLS_TPOFF (0xb6bcff40)
Warning, don't know of to handle rel #1321 type: R_386_TLS_TPOFF (0xb6bcff70)
Warning, don't know of to handle rel #1322 type: R_386_TLS_TPOFF (0xb6bcffe4)
Error: Global Symbol __libpthread_freeres not found, cannot apply R_386_GLOB_DAT @0xb6bcfe9c ((nil))
Error: Global Symbol _dl_starting_up not found, cannot apply R_386_GLOB_DAT @0xb6bcff84 ((nil))
Error: Global Symbol __libdl_freeres not found, cannot apply R_386_GLOB_DAT @0xb6bcffa4 ((nil))
Error: Global Symbol _dl_argv not found, cannot apply R_386_GLOB_DAT @0xb6bcffe0 ((nil))
Error: Symbol _dl_exception_create not found, cannot apply R_386_JMP_SLOT @0xb6bd001c (0x19056)
Error: Symbol __tunable_get_val not found, cannot apply R_386_JMP_SLOT @0xb6bd0024 (0x19076)
Error: Symbol _dl_find_dso_for_object not found, cannot apply R_386_JMP_SLOT @0xb6bd002c (0x19096)
Warning, don't know of to handle rel #8 type: 0x2a (unknown) (0xb6bd0028)
Warning, don't know of to handle rel #9 type: 0x2a (unknown) (0xb6bd0020)
Warning, don't know of to handle rel #10 type: 0x2a (unknown) (0xb6bd0014)
Error: Global Symbol _ITM_deregisterTMCloneTable not found, cannot apply R_386_GLOB_DAT @0xb6f7bfbc ((nil))
Error: Global Symbol __gmon_start__ not found, cannot apply R_386_GLOB_DAT @0xb6f7bfcc ((nil))
Error: Global Symbol _ITM_registerTMCloneTable not found, cannot apply R_386_GLOB_DAT @0xb6f7bfe4 ((nil))
Error: Symbol strcmp not found, cannot apply R_386_JMP_SLOT @0xb6f7c00c (0x1036)
Error: Symbol memcpy not found, cannot apply R_386_JMP_SLOT @0xb6f7c01c (0x1076)
Error: Symbol memcmp not found, cannot apply R_386_JMP_SLOT @0xb6f7c02c (0x10b6)
Error: Symbol strlen not found, cannot apply R_386_JMP_SLOT @0xb6f7c070 (0x11c6)
Error: Symbol memset not found, cannot apply R_386_JMP_SLOT @0xb6f7c078 (0x11e6)
Error: Symbol strrchr not found, cannot apply R_386_JMP_SLOT @0xb6f7c090 (0x1246)
Error: Symbol strncmp not found, cannot apply R_386_JMP_SLOT @0xb6f7c0a4 (0x1296)
[1]    32701 segmentation fault (core dumped)

(With a wrapped libc.so, many programs can display their help text, and quite a few, such as cat, sort, gzip, dd, env, sleep and dmesg do work.)

Amnesia AMFP: fails to boot, missing ogg / sdl symbols

Trying to boot straight into the game outputs this

Error: Symbol oggpackB_write not found, cannot apply R_386_JMP_SLOT @0xb591156c (0xdea)
Error: Symbol oggpack_writeclear not found, cannot apply R_386_JMP_SLOT @0xb5911570 (0xdfa)
Error: Symbol oggpackB_reset not found, cannot apply R_386_JMP_SLOT @0xb591157c (0xe2a)
Error: Symbol oggpackB_writeinit not found, cannot apply R_386_JMP_SLOT @0xb5911594 (0xe8a)
Error: Symbol oggpack_write not found, cannot apply R_386_JMP_SLOT @0xb5911598 (0xe9a)
Error: Symbol oggpackB_writeclear not found, cannot apply R_386_JMP_SLOT @0xb59115a4 (0xeca)
Error: Symbol oggpackB_get_buffer not found, cannot apply R_386_JMP_SLOT @0xb59115ac (0xeea)
Error: Symbol oggpackB_bytes not found, cannot apply R_386_JMP_SLOT @0xb59115b4 (0xf0a)
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb56bc198 (0x6b676)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb56bc474 (0x6c1e6)
Error: Symbol truncate not found, cannot apply R_386_JMP_SLOT @0x8f7a8bc (0x832d856)
Error: Symbol SDL_SetWindowBrightness not found, cannot apply R_386_JMP_SLOT @0x8f7a940 (0x832da66)
Error: Symbol logb not found, cannot apply R_386_JMP_SLOT @0x8f7ae24 (0x832edf6)

There's also the launcher, which if ran, will output

Error: Symbol XAllocNamedColor not found, cannot apply R_386_JMP_SLOT @0xb6efc198 (0x2c46)
Error: Symbol XESetCloseDisplay not found, cannot apply R_386_JMP_SLOT @0xb6efc1d4 (0x2d36)
Error: Symbol oggpackB_write not found, cannot apply R_386_JMP_SLOT @0xb579356c (0xdea)
Error: Symbol oggpack_writeclear not found, cannot apply R_386_JMP_SLOT @0xb5793570 (0xdfa)
Error: Symbol oggpackB_reset not found, cannot apply R_386_JMP_SLOT @0xb579357c (0xe2a)
Error: Symbol oggpackB_writeinit not found, cannot apply R_386_JMP_SLOT @0xb5793594 (0xe8a)
Error: Symbol oggpack_write not found, cannot apply R_386_JMP_SLOT @0xb5793598 (0xe9a)
Error: Symbol oggpackB_writeclear not found, cannot apply R_386_JMP_SLOT @0xb57935a4 (0xeca)
Error: Symbol oggpackB_get_buffer not found, cannot apply R_386_JMP_SLOT @0xb57935ac (0xeea)
Error: Symbol oggpackB_bytes not found, cannot apply R_386_JMP_SLOT @0xb57935b4 (0xf0a)
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb5569198 (0x6b676)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb5569474 (0x6c1e6)
Error: Symbol truncate not found, cannot apply R_386_JMP_SLOT @0x8d39894 (0x82b8b92)
Error: Symbol SDL_SetWindowBrightness not found, cannot apply R_386_JMP_SLOT @0x8d39938 (0x82b8e22)
Error: Symbol XmbResetIC not found, cannot apply R_386_JMP_SLOT @0x8d39d64 (0x82b9ed2)
Error: Symbol logb not found, cannot apply R_386_JMP_SLOT @0x8d39f34 (0x82ba612)
Error: Symbol XVaCreateNestedList not found, cannot apply R_386_JMP_SLOT @0x8d39fe0 (0x82ba8c2)
Error: Symbol XDrawPoints not found, cannot apply R_386_JMP_SLOT @0x8d3a29c (0x82bb3b2)
Error: Symbol XLocaleOfIM not found, cannot apply R_386_JMP_SLOT @0x8d3a2bc (0x82bb432)
PltResolver: Ofs=0x84daf5d, Id=3864 (IP=(nil))

Steam: Lots of missing symbols

So i got a bit ambitios and tried to see how far how i could get running the steam client. After spending a lot of time messing with libs / steam paths, i finally got box86 to load every lib. Heres the output.

pi@raspberrypi:~/.local/share/Steam $ ./steamTEMP.sh 
Running Steam on raspbian 10 32-bit
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
SDTRFFFFFFFFFFFFHG
Error: You are missing the following 32-bit libraries, and Steam may not run:
	not a dynamic executable
/home/pi/.local/share/Steam/ubuntu12_32/steamui.so
im here total
libc.so.6
BOX86_LD_LIBRARY_PATH: /usr/i686-linux-gnu/lib/:/home/pi/i386-lib/:/home/pi/.local/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/
Using default BOX86_PATH: ./:bin/
Counted 53 Env var
Looking for /home/pi/.local/share/Steam/ubuntu12_32/steamTEMP
Using native(wrapped) libX11.so.6
Using native(wrapped) librt.so.1
Using native(wrapped) libdl.so.2
Using emulated /usr/i686-linux-gnu/lib/libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using emulated /usr/i686-linux-gnu/lib/libgcc_s.so.1
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb64ca198 (0x6b676)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb64ca474 (0x6c1e6)
[2019-08-11 07:26:50] Startup - updater built Aug  6 2019 01:02:51
Warning: partially unimplement call to dladdr(0xb690b070, 0xb67abb20)
Using emulated /home/pi/.local/share/Steam/ubuntu12_32/crashhandler.so
Installing breakpad exception handler for appid(steam)/version(1565057304)
Using native(wrapped) libGL.so.1
Looks like steam didn't shutdown cleanly, scheduling immediate update check
Installing breakpad exception handler for appid(steamtemp)/version(1565057304)
[2019-08-11 07:26:52] Checking for update on startup
[2019-08-11 07:26:52] Checking for available updates...
[2019-08-11 07:26:52] Downloading manifest: client-download.steampowered.com/client/steam_client_ubuntu12
Installing breakpad exception handler for appid(steamtemp)/version(1565057304)
[2019-08-11 07:26:52] Download skipped: /client/steam_client_ubuntu12 version 1565057304, installed version 1565057304
[2019-08-11 07:26:52] Nothing to do
[2019-08-11 07:26:52] Verifying installation...
[2019-08-11 07:26:52] Performing checksum verification of executable files
[2019-08-11 07:27:12] Verification complete
Using emulated libappindicator.so.1
Using emulated libindicator.so.7
Using emulated /home/pi/i386-lib/libgtk-x11-2.0.so.0
Using emulated /home/pi/i386-lib/libgdk-x11-2.0.so.0
Using emulated /home/pi/i386-lib/libpangocairo-1.0.so.0
Using emulated /home/pi/i386-lib/libpango-1.0.so.0
Using emulated /home/pi/i386-lib/libgobject-2.0.so.0
Using emulated /home/pi/i386-lib/libglib-2.0.so.0
Using emulated /home/pi/i386-lib/libpcre.so.3
Using emulated /home/pi/i386-lib/libffi.so.6
Using emulated /home/pi/i386-lib/libthai.so.0
Using emulated /home/pi/i386-lib/libdatrie.so.1
Using emulated /home/pi/i386-lib/libfribidi.so.0
Using emulated /home/pi/i386-lib/libpangoft2-1.0.so.0
Using emulated /home/pi/i386-lib/libharfbuzz.so.0
Using emulated /home/pi/i386-lib/libfreetype.so.6
Using native(wrapped) libpng16.so.16
Using native(wrapped) libz.so.1
Using emulated /home/pi/i386-lib/libgraphite2.so.3
Using emulated /home/pi/i386-lib/libfontconfig.so.1
Using emulated /home/pi/i386-lib/libexpat.so.1
Using native(wrapped) libuuid.so.1
Using emulated /home/pi/i386-lib/libcairo.so.2
Using emulated /home/pi/i386-lib/libpixman-1.so.0
Using emulated /home/pi/i386-lib/libxcb-shm.so.0
Using native(wrapped) libxcb.so.1
Using emulated /home/pi/i386-lib/libxcb-render.so.0
Using native(wrapped) libXrender.so.1
Using native(wrapped) libXau.so.6
Using native(wrapped) libXdmcp.so.6
Using native(wrapped) libXext.so.6
Using emulated /home/pi/i386-lib/libgdk_pixbuf-2.0.so.0
Using emulated /home/pi/i386-lib/libgmodule-2.0.so.0
Using emulated /home/pi/i386-lib/libgio-2.0.so.0
Using emulated /home/pi/i386-lib/libmount.so.1
Using emulated /home/pi/i386-lib/libblkid.so.1
Using emulated /home/pi/i386-lib/libselinux.so.1
Using native(wrapped) libresolv.so.2
Using native(wrapped) libXinerama.so.1
Using native(wrapped) libXi.so.6
Using native(wrapped) libXrandr.so.2
Using native(wrapped) libXcursor.so.1
Using emulated /home/pi/i386-lib/libXcomposite.so.1
Using emulated /home/pi/i386-lib/libXdamage.so.1
Using native(wrapped) libXfixes.so.3
Using emulated /home/pi/i386-lib/libatk-1.0.so.0
Using emulated libdbusmenu-gtk.so.4
Using emulated libdbusmenu-glib.so.4
Error: Symbol posix_spawnattr_setflags not found, cannot apply R_386_JMP_SLOT @0xb06dbc3c (0x16086)
Error: Symbol posix_spawn_file_actions_adddup2 not found, cannot apply R_386_JMP_SLOT @0xb06dbc5c (0x16106)
Error: Symbol posix_spawnattr_init not found, cannot apply R_386_JMP_SLOT @0xb06dbc84 (0x161a6)
Error: Symbol posix_spawnattr_destroy not found, cannot apply R_386_JMP_SLOT @0xb06dbd00 (0x16396)
Error: Symbol posix_spawn_file_actions_init not found, cannot apply R_386_JMP_SLOT @0xb06dbd24 (0x16426)
Error: Symbol posix_spawn_file_actions_addclose not found, cannot apply R_386_JMP_SLOT @0xb06dbd64 (0x16526)
Error: Symbol posix_spawnattr_setsigdefault not found, cannot apply R_386_JMP_SLOT @0xb06dbdb4 (0x16666)
Error: Symbol posix_spawnp not found, cannot apply R_386_JMP_SLOT @0xb06dbe5c (0x16906)
Error: Symbol posix_spawn_file_actions_destroy not found, cannot apply R_386_JMP_SLOT @0xb06dbeac (0x16a46)
Error: Symbol posix_spawn not found, cannot apply R_386_JMP_SLOT @0xb06dbed4 (0x16ae6)
Error: Symbol xcb_send_request_with_fds not found, cannot apply R_386_JMP_SLOT @0xb6f18010 (0x1046)
Error: Symbol xcb_send_request not found, cannot apply R_386_JMP_SLOT @0xb6f18014 (0x1056)
Error: Symbol xcb_wait_for_reply not found, cannot apply R_386_JMP_SLOT @0xb6f18018 (0x1066)
Error: Symbol xcb_get_reply_fds not found, cannot apply R_386_JMP_SLOT @0xb6f1801c (0x1076)
Error: Symbol xcb_send_request not found, cannot apply R_386_JMP_SLOT @0xb0e0e05c (0x4176)
Error: Symbol xcb_wait_for_reply not found, cannot apply R_386_JMP_SLOT @0xb0e0e064 (0x4196)
Error: Symbol xcb_str_sizeof not found, cannot apply R_386_JMP_SLOT @0xb0e0e078 (0x41e6)
Error: Symbol xcb_depth_visuals_iterator not found, cannot apply R_386_JMP_SLOT @0xb022da68 (0xc156)
Error: Symbol png_write_image not found, cannot apply R_386_JMP_SLOT @0xb022da78 (0xc196)
Error: Symbol xcb_connection_has_error not found, cannot apply R_386_JMP_SLOT @0xb022da84 (0xc1c6)
Error: Symbol XInitExtension not found, cannot apply R_386_JMP_SLOT @0xb022dac0 (0xc2b6)
Error: Symbol xcb_poll_for_reply not found, cannot apply R_386_JMP_SLOT @0xb022dac4 (0xc2c6)
Error: Symbol xcb_change_gc not found, cannot apply R_386_JMP_SLOT @0xb022dad4 (0xc306)
Error: Symbol xcb_get_maximum_request_length not found, cannot apply R_386_JMP_SLOT @0xb022dadc (0xc326)
Error: Symbol xcb_create_pixmap not found, cannot apply R_386_JMP_SLOT @0xb022db0c (0xc3e6)
Error: Symbol XExtendedMaxRequestSize not found, cannot apply R_386_JMP_SLOT @0xb022db24 (0xc446)
Error: Symbol xcb_get_extension_data not found, cannot apply R_386_JMP_SLOT @0xb022db8c (0xc5e6)
Error: Symbol xcb_free_gc not found, cannot apply R_386_JMP_SLOT @0xb022db90 (0xc5f6)
Error: Symbol xcb_get_image_reply not found, cannot apply R_386_JMP_SLOT @0xb022dbac (0xc666)
Error: Symbol xcb_put_image not found, cannot apply R_386_JMP_SLOT @0xb022dbb8 (0xc696)
Error: Symbol xcb_copy_area not found, cannot apply R_386_JMP_SLOT @0xb022dbec (0xc766)
Error: Symbol xcb_get_image_data not found, cannot apply R_386_JMP_SLOT @0xb022dbfc (0xc7a6)
Error: Symbol xcb_prefetch_extension_data not found, cannot apply R_386_JMP_SLOT @0xb022dc04 (0xc7c6)
Error: Symbol xcb_wait_for_reply not found, cannot apply R_386_JMP_SLOT @0xb022dc18 (0xc816)
Error: Symbol xcb_prefetch_maximum_request_length not found, cannot apply R_386_JMP_SLOT @0xb022dc1c (0xc826)
Error: Symbol xcb_setup_roots_iterator not found, cannot apply R_386_JMP_SLOT @0xb022dc24 (0xc846)
Error: Symbol xcb_get_property not found, cannot apply R_386_JMP_SLOT @0xb022dc3c (0xc8a6)
Error: Symbol XESetCloseDisplay not found, cannot apply R_386_JMP_SLOT @0xb022dc58 (0xc916)
Error: Symbol xcb_get_setup not found, cannot apply R_386_JMP_SLOT @0xb022dca4 (0xca46)
Error: Symbol xcb_create_pixmap_checked not found, cannot apply R_386_JMP_SLOT @0xb022dcd0 (0xcaf6)
Error: Symbol xcb_send_request not found, cannot apply R_386_JMP_SLOT @0xb022dce4 (0xcb46)
Error: Symbol XScreenNumberOfScreen not found, cannot apply R_386_JMP_SLOT @0xb022dd3c (0xcca6)
Error: Symbol xcb_flush not found, cannot apply R_386_JMP_SLOT @0xb022dd54 (0xcd06)
Error: Symbol png_set_bKGD not found, cannot apply R_386_JMP_SLOT @0xb022dd58 (0xcd16)
Error: Symbol xcb_get_property_value not found, cannot apply R_386_JMP_SLOT @0xb022dd68 (0xcd56)
Error: Symbol xcb_get_property_reply not found, cannot apply R_386_JMP_SLOT @0xb022ddbc (0xcea6)
Error: Symbol XInitImage not found, cannot apply R_386_JMP_SLOT @0xb022ddc8 (0xced6)
Error: Symbol xcb_screen_allowed_depths_iterator not found, cannot apply R_386_JMP_SLOT @0xb022ddcc (0xcee6)
Error: Symbol xcb_get_image not found, cannot apply R_386_JMP_SLOT @0xb022de00 (0xcfb6)
Error: Symbol XNextRequest not found, cannot apply R_386_JMP_SLOT @0xb022de04 (0xcfc6)
Error: Symbol _XReadEvents not found, cannot apply R_386_JMP_SLOT @0xb022de44 (0xd0c6)
Error: Symbol png_set_write_fn not found, cannot apply R_386_JMP_SLOT @0xb022de54 (0xd106)
Error: Symbol xcb_create_gc not found, cannot apply R_386_JMP_SLOT @0xb022de58 (0xd116)
Error: Symbol xcb_free_pixmap not found, cannot apply R_386_JMP_SLOT @0xb022de68 (0xd156)
Error: Symbol xcb_discard_reply not found, cannot apply R_386_JMP_SLOT @0xb022de74 (0xd186)
Error: Symbol xcb_request_check not found, cannot apply R_386_JMP_SLOT @0xb022de98 (0xd216)
Error: Symbol xcb_generate_id not found, cannot apply R_386_JMP_SLOT @0xb022dea0 (0xd236)
Error: Symbol xcb_get_input_focus not found, cannot apply R_386_JMP_SLOT @0xb022deb0 (0xd276)
Error: Symbol xcb_screen_next not found, cannot apply R_386_JMP_SLOT @0xb022dec4 (0xd2c6)
Error: Symbol xcb_get_property_value_length not found, cannot apply R_386_JMP_SLOT @0xb022def4 (0xd386)
Error: Symbol xcb_visualtype_next not found, cannot apply R_386_JMP_SLOT @0xb022df14 (0xd406)
Error: Symbol xcb_poly_fill_rectangle not found, cannot apply R_386_JMP_SLOT @0xb022df90 (0xd5f6)
Error: Symbol xcb_depth_next not found, cannot apply R_386_JMP_SLOT @0xb022dfac (0xd666)
Error: Symbol png_set_write_user_transform_fn not found, cannot apply R_386_JMP_SLOT @0xb022dfb0 (0xd676)
Error: Symbol __openat64_2 not found, cannot apply R_386_JMP_SLOT @0xafd6ec90 (0x52a6)
Error: Symbol err not found, cannot apply R_386_JMP_SLOT @0xafd6ed08 (0x5486)
Error: Symbol warnx not found, cannot apply R_386_JMP_SLOT @0xafd6ee24 (0x58f6)
Error: Symbol mempcpy not found, cannot apply R_386_JMP_SLOT @0xafd6ee9c (0x5ad6)
Error: Symbol wcswidth not found, cannot apply R_386_JMP_SLOT @0xafd6eeb0 (0x5b26)
Error: Symbol warn not found, cannot apply R_386_JMP_SLOT @0xafd6eed0 (0x5ba6)
Error: Symbol errx not found, cannot apply R_386_JMP_SLOT @0xafd6eed4 (0x5bb6)
Error: Global Symbol alphasort not found, cannot apply R_386_GLOB_DAT @0xafd0fff0 ((nil))
Error: Symbol fts_open not found, cannot apply R_386_JMP_SLOT @0xafd10024 (0x4646)
Error: Symbol fts_read not found, cannot apply R_386_JMP_SLOT @0xafd10044 (0x46c6)
Error: Symbol fts_set not found, cannot apply R_386_JMP_SLOT @0xafd1004c (0x46e6)
Error: Symbol fts_close not found, cannot apply R_386_JMP_SLOT @0xafd100fc (0x49a6)
Error: Global Symbol versionsort64 not found, cannot apply R_386_GLOB_DAT @0xafddafd8 ((nil))
Error: Symbol __openat64_2 not found, cannot apply R_386_JMP_SLOT @0xafddaa0c (0x8406)
Error: Symbol setns not found, cannot apply R_386_JMP_SLOT @0xafddaae4 (0x8766)
Error: Symbol err not found, cannot apply R_386_JMP_SLOT @0xafddab04 (0x87e6)
Error: Symbol warnx not found, cannot apply R_386_JMP_SLOT @0xafddacf4 (0x8fa6)
Error: Symbol mempcpy not found, cannot apply R_386_JMP_SLOT @0xafddadb0 (0x9296)
Error: Symbol wcswidth not found, cannot apply R_386_JMP_SLOT @0xafddadd0 (0x9316)
Error: Symbol warn not found, cannot apply R_386_JMP_SLOT @0xafddadf4 (0x93a6)
Error: Symbol errx not found, cannot apply R_386_JMP_SLOT @0xafddadfc (0x93c6)
Error: Symbol scandirat64 not found, cannot apply R_386_JMP_SLOT @0xafddae74 (0x95a6)
Error: Global Symbol in6addr_loopback not found, cannot apply R_386_GLOB_DAT @0xaffe0f50 ((nil))
Error: Symbol endservent not found, cannot apply R_386_JMP_SLOT @0xaffe0080 (0x280e6)
Error: Symbol sendmmsg not found, cannot apply R_386_JMP_SLOT @0xaffe0288 (0x28906)
Error: Symbol splice not found, cannot apply R_386_JMP_SLOT @0xaffe0290 (0x28926)
Error: Symbol recvmmsg not found, cannot apply R_386_JMP_SLOT @0xaffe02a8 (0x28986)
Error: Symbol __res_nquery not found, cannot apply R_386_JMP_SLOT @0xaffe0d98 (0x2b546)
Error: Symbol XESetCloseDisplay not found, cannot apply R_386_JMP_SLOT @0xafc81028 (0x906)
Error: Symbol XInitExtension not found, cannot apply R_386_JMP_SLOT @0xafc81030 (0x926)
Error: Symbol XESetCloseDisplay not found, cannot apply R_386_JMP_SLOT @0xafc7d034 (0x10d6)
Error: Symbol XInitExtension not found, cannot apply R_386_JMP_SLOT @0xafc7d03c (0x10f6)
Error: Symbol XProcessInternalConnection not found, cannot apply R_386_JMP_SLOT @0xb0804040 (0x13116)
Error: Symbol XUngrabDevice not found, cannot apply R_386_JMP_SLOT @0xb08040a8 (0x132b6)
Error: Symbol XFreeDeviceList not found, cannot apply R_386_JMP_SLOT @0xb08040ac (0x132c6)
Error: Symbol XStringToKeysym not found, cannot apply R_386_JMP_SLOT @0xb08040c4 (0x13326)
Error: Symbol XListInputDevices not found, cannot apply R_386_JMP_SLOT @0xb08040d8 (0x13376)
Error: Symbol XFreeDeviceMotionEvents not found, cannot apply R_386_JMP_SLOT @0xb08040dc (0x13386)
Error: Symbol XSyncValueIsZero not found, cannot apply R_386_JMP_SLOT @0xb08040f4 (0x133e6)
Error: Symbol XmbTextListToTextProperty not found, cannot apply R_386_JMP_SLOT @0xb0804104 (0x13426)
Error: Symbol XReconfigureWMWindow not found, cannot apply R_386_JMP_SLOT @0xb0804128 (0x134b6)
Error: Symbol XwcTextPropertyToTextList not found, cannot apply R_386_JMP_SLOT @0xb0804144 (0x13526)
Error: Symbol XGrabDevice not found, cannot apply R_386_JMP_SLOT @0xb080416c (0x135c6)
Error: Symbol XExtendedMaxRequestSize not found, cannot apply R_386_JMP_SLOT @0xb0804188 (0x13636)
Error: Symbol XSyncIntToValue not found, cannot apply R_386_JMP_SLOT @0xb08041a8 (0x136b6)
Error: Symbol XRRGetMonitors not found, cannot apply R_386_JMP_SLOT @0xb08041ec (0x137c6)
Error: Symbol XwcTextListToTextProperty not found, cannot apply R_386_JMP_SLOT @0xb0804204 (0x13826)
Error: Symbol XSelectExtensionEvent not found, cannot apply R_386_JMP_SLOT @0xb0804214 (0x13866)
Error: Symbol XGetDeviceMotionEvents not found, cannot apply R_386_JMP_SLOT @0xb080424c (0x13946)
Error: Symbol _XDeqAsyncHandler not found, cannot apply R_386_JMP_SLOT @0xb0804258 (0x13976)
Error: Symbol XListDepths not found, cannot apply R_386_JMP_SLOT @0xb0804268 (0x139b6)
Error: Symbol XkbGetControls not found, cannot apply R_386_JMP_SLOT @0xb0804278 (0x139f6)
Error: Symbol XSyncDestroyCounter not found, cannot apply R_386_JMP_SLOT @0xb08042c0 (0x13b16)
Error: Symbol XmbTextPropertyToTextList not found, cannot apply R_386_JMP_SLOT @0xb08042cc (0x13b46)
Error: Symbol XkbLibraryVersion not found, cannot apply R_386_JMP_SLOT @0xb08042d8 (0x13b76)
Error: Symbol XkbGetNames not found, cannot apply R_386_JMP_SLOT @0xb08042f4 (0x13be6)
Error: Symbol XGetMotionEvents not found, cannot apply R_386_JMP_SLOT @0xb0804344 (0x13d26)
Error: Symbol XkbSelectEvents not found, cannot apply R_386_JMP_SLOT @0xb0804350 (0x13d56)
Error: Symbol XRRFreeMonitors not found, cannot apply R_386_JMP_SLOT @0xb08043d8 (0x13f76)
Error: Symbol XSyncIntsToValue not found, cannot apply R_386_JMP_SLOT @0xb0804484 (0x14226)
Error: Symbol XAllocColorCells not found, cannot apply R_386_JMP_SLOT @0xb080449c (0x14286)
Error: Symbol XAddConnectionWatch not found, cannot apply R_386_JMP_SLOT @0xb08044b0 (0x142d6)
Error: Symbol XSyncCreateCounter not found, cannot apply R_386_JMP_SLOT @0xb08044b4 (0x142e6)
Error: Symbol XwcTextEscapement not found, cannot apply R_386_JMP_SLOT @0xb0804568 (0x145b6)
Error: Symbol XOpenDevice not found, cannot apply R_386_JMP_SLOT @0xb0804578 (0x145f6)
Error: Symbol XSyncSetCounter not found, cannot apply R_386_JMP_SLOT @0xb08045f0 (0x147d6)
Error: Symbol XwcTextExtents not found, cannot apply R_386_JMP_SLOT @0xb0804600 (0x14816)
Error: Symbol XwcFreeStringList not found, cannot apply R_386_JMP_SLOT @0xb0804604 (0x14826)
Error: Symbol XFontsOfFontSet not found, cannot apply R_386_JMP_SLOT @0xb08046f0 (0x14bd6)
Error: Symbol XCloseDevice not found, cannot apply R_386_JMP_SLOT @0xb0804708 (0x14c36)
Error: Symbol XQueryDeviceState not found, cannot apply R_386_JMP_SLOT @0xb0804724 (0x14ca6)
Error: Symbol XSyncInitialize not found, cannot apply R_386_JMP_SLOT @0xb0804730 (0x14cd6)
Error: Symbol XmbDrawString not found, cannot apply R_386_JMP_SLOT @0xb0804748 (0x14d36)
Error: Symbol XmbTextExtents not found, cannot apply R_386_JMP_SLOT @0xb08047a4 (0x14ea6)
Error: Symbol XmbTextEscapement not found, cannot apply R_386_JMP_SLOT @0xb08047c8 (0x14f36)
Error: Symbol XwcDrawString not found, cannot apply R_386_JMP_SLOT @0xb08047e0 (0x14f96)
Error: Symbol XkbSelectEventDetails not found, cannot apply R_386_JMP_SLOT @0xb0804814 (0x15066)
Error: Symbol XSyncQueryExtension not found, cannot apply R_386_JMP_SLOT @0xb0804870 (0x151d6)
Error: Symbol XDrawPoints not found, cannot apply R_386_JMP_SLOT @0xb0804890 (0x15256)
Error: Symbol XFreeDeviceState not found, cannot apply R_386_JMP_SLOT @0xb0804898 (0x15276)
Error: Symbol XBaseFontNameListOfFontSet not found, cannot apply R_386_JMP_SLOT @0xb08048a4 (0x152a6)
Error: Symbol _XGetAsyncReply not found, cannot apply R_386_JMP_SLOT @0xb08048cc (0x15346)
Error: Symbol XkbBell not found, cannot apply R_386_JMP_SLOT @0xb08048d4 (0x15366)
Error: Symbol XRRGetScreenResourcesCurrent not found, cannot apply R_386_JMP_SLOT @0xb0804938 (0x154f6)
Error: Symbol XUngrabKey not found, cannot apply R_386_JMP_SLOT @0xb0cfc0e8 (0x4c3b6)
Error: Symbol nftw64 not found, cannot apply R_386_JMP_SLOT @0xb0cfcbb8 (0x4eef6)
Error: Symbol XExtendedMaxRequestSize not found, cannot apply R_386_JMP_SLOT @0xb0cfcf78 (0x4fdf6)
Using emulated /home/pi/.local/share/Steam/steamui.so
Using emulated libtier0_s.so
Using emulated libvstdlib_s.so
Using emulated libv8.so
Using emulated libicui18n.so
Using emulated libicuuc.so
Using emulated libvideo.so
Using emulated libavcodec.so.57
Using emulated libavutil.so.55
Using emulated /home/pi/i386-lib/libvdpau.so.1
Using emulated /home/pi/i386-lib/libva.so.1
Using emulated /home/pi/i386-lib/libva-x11.so.1
Using emulated /home/pi/i386-lib/libdrm.so.2
Using emulated libavformat.so.57
Using emulated /home/pi/i386-lib/libbz2.so.1.0
Using emulated libavresample.so.3
Using emulated libswscale.so.4
Using native(wrapped) libSDL2-2.0.so.0
Using emulated /home/pi/i386-lib/libXtst.so.6
Using emulated /home/pi/i386-lib/libpulse.so.0
Using emulated /home/pi/i386-lib/libpulsecommon-12.2.so
Using native(wrapped) libX11-xcb.so.1
Using emulated /home/pi/i386-lib/libICE.so.6
Using emulated /home/pi/i386-lib/libbsd.so.0
Using emulated /home/pi/i386-lib/libSM.so.6
Using emulated /home/pi/i386-lib/libsystemd.so.0
Using emulated /home/pi/i386-lib/liblzma.so.5
Using emulated /home/pi/i386-lib/liblz4.so.1
Using emulated /home/pi/i386-lib/libgcrypt.so.20
Using emulated /home/pi/i386-lib/libgpg-error.so.0
Using emulated /home/pi/i386-lib/libwrap.so.0
Using emulated /usr/i686-linux-gnu/lib/libnsl.so.1
Using emulated /home/pi/i386-lib/libsndfile.so.1
Using emulated /home/pi/i386-lib/libFLAC.so.8
Using native(wrapped) libogg.so.0
Using native(wrapped) libvorbis.so.0
Using emulated /home/pi/i386-lib/libvorbisenc.so.2
Using emulated /home/pi/i386-lib/libasyncns.so.0
Using native(wrapped) libdbus-1.so.3
Using emulated /home/pi/i386-lib/libcap.so.2
Error: Symbol nearbyint not found, cannot apply R_386_JMP_SLOT @0xae33b968 (0x2162f6)
Error: Global Symbol __log10_finite not found, cannot apply R_386_PC32 @0xac18d5c9 (0xfffffffc)
Error: Global Symbol __log10_finite not found, cannot apply R_386_PC32 @0xac18d629 (0xfffffffc)
Error: Global Symbol __hypot_finite not found, cannot apply R_386_PC32 @0xac18ef09 (0xfffffffc)
Error: Global Symbol __hypot_finite not found, cannot apply R_386_PC32 @0xac18ef3b (0xfffffffc)
Error: Global Symbol __hypot_finite not found, cannot apply R_386_PC32 @0xac190246 (0xfffffffc)
Error: Global Symbol __exp2_finite not found, cannot apply R_386_PC32 @0xac1908c2 (0xfffffffc)
Error: Symbol __sinh_finite not found, cannot apply R_386_32 @0xac1914bb ((nil))
Error: Symbol __cosh_finite not found, cannot apply R_386_32 @0xac1915c9 ((nil))
Error: Symbol __acos_finite not found, cannot apply R_386_32 @0xac191723 ((nil))
Error: Global Symbol __hypot_finite not found, cannot apply R_386_PC32 @0xac25130a (0xfffffffc)
Error: Global Symbol __exp2_finite not found, cannot apply R_386_PC32 @0xac25a4e1 (0xfffffffc)
Error: Global Symbol __exp2_finite not found, cannot apply R_386_PC32 @0xac25a53c (0xfffffffc)
Error: Global Symbol __hypot_finite not found, cannot apply R_386_PC32 @0xac0de77e (0xfffffffc)
Error: Global Symbol __hypot_finite not found, cannot apply R_386_PC32 @0xac0de79c (0xfffffffc)
Error: Global Symbol __exp2_finite not found, cannot apply R_386_PC32 @0xabfee362 (0xfffffffc)
Error: Symbol _XDeqAsyncHandler not found, cannot apply R_386_JMP_SLOT @0xab731034 (0xe06)
Error: Symbol _XGetAsyncData not found, cannot apply R_386_JMP_SLOT @0xab731054 (0xe86)
Error: Symbol warnx not found, cannot apply R_386_JMP_SLOT @0xab674ef0 (0x34b6)
Error: Symbol fopencookie not found, cannot apply R_386_JMP_SLOT @0xab674f28 (0x3596)
Error: Symbol vwarn not found, cannot apply R_386_JMP_SLOT @0xab674f2c (0x35a6)
Error: Symbol __explicit_bzero_chk not found, cannot apply R_386_JMP_SLOT @0xab674f5c (0x3666)
Error: Symbol memfd_create not found, cannot apply R_386_JMP_SLOT @0xab64aa08 (0xb1c6)
Error: Symbol __ppoll_chk not found, cannot apply R_386_JMP_SLOT @0xab64aa2c (0xb256)
Error: Symbol mq_getattr not found, cannot apply R_386_JMP_SLOT @0xab64aa78 (0xb386)
Error: Symbol setns not found, cannot apply R_386_JMP_SLOT @0xab64ab40 (0xb6a6)
Error: Symbol signalfd not found, cannot apply R_386_JMP_SLOT @0xab64aba0 (0xb826)
Error: Symbol sigisemptyset not found, cannot apply R_386_JMP_SLOT @0xab64abfc (0xb996)
Error: Symbol timerfd_create not found, cannot apply R_386_JMP_SLOT @0xab64ac64 (0xbb36)
Error: Symbol parse_printf_format not found, cannot apply R_386_JMP_SLOT @0xab64acfc (0xbd96)
Error: Symbol mempcpy not found, cannot apply R_386_JMP_SLOT @0xab64ade8 (0xc146)
Error: Symbol open_memstream not found, cannot apply R_386_JMP_SLOT @0xab64ae68 (0xc346)
Error: Symbol timerfd_settime not found, cannot apply R_386_JMP_SLOT @0xab64ae94 (0xc3f6)
Warning, don't know of to handle rel #2 type: R_386_TLS_TPOFF (0xab43dfc8)
Error: Global Symbol xdr_u_int not found, cannot apply R_386_GLOB_DAT @0xab43dfd4 ((nil))
Error: Global Symbol xdr_void not found, cannot apply R_386_GLOB_DAT @0xab43dfe4 ((nil))
Error: Global Symbol xdr_bool not found, cannot apply R_386_GLOB_DAT @0xab43dfe8 ((nil))
Error: Global Symbol _libc_intl_domainname not found, cannot apply R_386_GLOB_DAT @0xab43dfec ((nil))
Error: Global Symbol __pthread_once not found, cannot apply R_386_GLOB_DAT @0xab43dff0 ((nil))
Error: Global Symbol xdr_netobj not found, cannot apply R_386_GLOB_DAT @0xab43dff8 ((nil))
Error: Symbol xdr_string not found, cannot apply R_386_JMP_SLOT @0xab43e00c (0x3046)
Error: Symbol clnt_pcreateerror not found, cannot apply R_386_JMP_SLOT @0xab43e018 (0x3076)
Error: Symbol svc_register not found, cannot apply R_386_JMP_SLOT @0xab43e020 (0x3096)
Error: Symbol svcudp_bufcreate not found, cannot apply R_386_JMP_SLOT @0xab43e030 (0x30d6)
Error: Symbol __asprintf not found, cannot apply R_386_JMP_SLOT @0xab43e038 (0x30f6)
Error: Symbol key_gendes not found, cannot apply R_386_JMP_SLOT @0xab43e060 (0x3196)
Error: Symbol xdr_pointer not found, cannot apply R_386_JMP_SLOT @0xab43e068 (0x31b6)
Error: Symbol xprt_unregister not found, cannot apply R_386_JMP_SLOT @0xab43e070 (0x31d6)
Error: Symbol svctcp_create not found, cannot apply R_386_JMP_SLOT @0xab43e078 (0x31f6)
Error: Symbol xdrmem_create not found, cannot apply R_386_JMP_SLOT @0xab43e080 (0x3216)
Error: Symbol xdr_enum not found, cannot apply R_386_JMP_SLOT @0xab43e088 (0x3236)
Error: Symbol xdr_sizeof not found, cannot apply R_386_JMP_SLOT @0xab43e0ac (0x32c6)
Error: Symbol __libc_clntudp_bufcreate not found, cannot apply R_386_JMP_SLOT @0xab43e0b4 (0x32e6)
Error: Symbol xdr_u_char not found, cannot apply R_386_JMP_SLOT @0xab43e0c4 (0x3326)
Error: Symbol xdr_free not found, cannot apply R_386_JMP_SLOT @0xab43e0cc (0x3346)
Error: Symbol authdes_pk_create not found, cannot apply R_386_JMP_SLOT @0xab43e0d4 (0x3366)
Error: Symbol xdr_array not found, cannot apply R_386_JMP_SLOT @0xab43e0d8 (0x3376)
Error: Symbol __libc_rpc_getport not found, cannot apply R_386_JMP_SLOT @0xab43e0e0 (0x3396)
Error: Symbol xdr_uint32_t not found, cannot apply R_386_JMP_SLOT @0xab43e0e4 (0x33a6)
Error: Symbol authdes_create not found, cannot apply R_386_JMP_SLOT @0xab43e0f4 (0x33e6)
Error: Symbol key_secretkey_is_set not found, cannot apply R_386_JMP_SLOT @0xab43e0f8 (0x33f6)
Error: Symbol asprintf not found, cannot apply R_386_JMP_SLOT @0xab43e0fc (0x3406)
Error: Symbol svc_sendreply not found, cannot apply R_386_JMP_SLOT @0xab43e104 (0x3426)
Error: Symbol __mempcpy not found, cannot apply R_386_JMP_SLOT @0xab43e108 (0x3436)
Error: Symbol clntudp_create not found, cannot apply R_386_JMP_SLOT @0xab43e10c (0x3446)
Error: Symbol clnt_perror not found, cannot apply R_386_JMP_SLOT @0xab43e110 (0x3456)
Error: Symbol authunix_create_default not found, cannot apply R_386_JMP_SLOT @0xab43e114 (0x3466)
Error: Symbol __nss_hash not found, cannot apply R_386_JMP_SLOT @0xab43e118 (0x3476)
Error: Symbol clnt_create not found, cannot apply R_386_JMP_SLOT @0xab43e120 (0x3496)
Error: Symbol __rpc_thread_svc_max_pollfd not found, cannot apply R_386_JMP_SLOT @0xab43e128 (0x34b6)
Error: Symbol host2netname not found, cannot apply R_386_JMP_SLOT @0xab43e12c (0x34c6)
Error: Symbol xdr_opaque not found, cannot apply R_386_JMP_SLOT @0xab43e130 (0x34d6)
Error: Symbol svcerr_systemerr not found, cannot apply R_386_JMP_SLOT @0xab43e13c (0x3506)
Error: Symbol rawmemchr not found, cannot apply R_386_JMP_SLOT @0xab43e140 (0x3516)
Error: Symbol xdr_int not found, cannot apply R_386_JMP_SLOT @0xab43e148 (0x3536)
Error: Symbol svcerr_noproc not found, cannot apply R_386_JMP_SLOT @0xab43e14c (0x3546)
Error: Symbol get_myaddress not found, cannot apply R_386_JMP_SLOT @0xab43e154 (0x3566)
Error: Symbol svcerr_decode not found, cannot apply R_386_JMP_SLOT @0xab43e158 (0x3576)
Error: Symbol xdrstdio_create not found, cannot apply R_386_JMP_SLOT @0xab43e15c (0x3586)
Error: Symbol __rpc_thread_svc_pollfd not found, cannot apply R_386_JMP_SLOT @0xab43e168 (0x35b6)
Error: Symbol __stpcpy not found, cannot apply R_386_JMP_SLOT @0xab43e170 (0x35d6)
Error: Symbol clnttcp_create not found, cannot apply R_386_JMP_SLOT @0xab43e178 (0x35f6)
Error: Symbol xdr_bytes not found, cannot apply R_386_JMP_SLOT @0xab43e180 (0x3616)
Error: Symbol svc_getreq_poll not found, cannot apply R_386_JMP_SLOT @0xab43e18c (0x3646)
Error: Symbol innetgr not found, cannot apply R_386_JMP_SLOT @0xab44bf28 (0x2496)
Error: Symbol capset not found, cannot apply R_386_JMP_SLOT @0xab29ef88 (0x10a6)
Error: Symbol capget not found, cannot apply R_386_JMP_SLOT @0xab29ef90 (0x10c6)
Error: Symbol asprintf not found, cannot apply R_386_JMP_SLOT @0xab29efa8 (0x1126)
Error: Global Symbol in6addr_loopback not found, cannot apply R_386_GLOB_DAT @0xab722fd8 ((nil))
Error: Global Symbol main not found, cannot apply R_386_GLOB_DAT @0xab722ffc ((nil))
Error: Symbol dbus_free not found, cannot apply R_386_JMP_SLOT @0xab72246c (0xe2e6)
Error: Symbol xcb_connection_has_error not found, cannot apply R_386_JMP_SLOT @0xab722470 (0xe2f6)
Error: Symbol dbus_message_iter_get_fixed_array not found, cannot apply R_386_JMP_SLOT @0xab7224a0 (0xe3b6)
Error: Symbol dbus_message_iter_recurse not found, cannot apply R_386_JMP_SLOT @0xab7224d0 (0xe476)
Error: Symbol dbus_message_iter_append_fixed_array not found, cannot apply R_386_JMP_SLOT @0xab7224e4 (0xe4c6)
Error: Symbol xcb_intern_atom not found, cannot apply R_386_JMP_SLOT @0xab722564 (0xe6c6)
Error: Symbol dbus_watch_get_flags not found, cannot apply R_386_JMP_SLOT @0xab72261c (0xe9a6)
Error: Symbol dbus_message_iter_get_signature not found, cannot apply R_386_JMP_SLOT @0xab722664 (0xeac6)
Error: Symbol dbus_message_iter_append_basic not found, cannot apply R_386_JMP_SLOT @0xab72267c (0xeb26)
Error: Symbol dbus_connection_send not found, cannot apply R_386_JMP_SLOT @0xab7226f8 (0xed16)
Error: Symbol xcb_connect not found, cannot apply R_386_JMP_SLOT @0xab722754 (0xee86)
Error: Symbol xcb_setup_roots_iterator not found, cannot apply R_386_JMP_SLOT @0xab7227bc (0xf026)
Error: Symbol xcb_get_property not found, cannot apply R_386_JMP_SLOT @0xab7227f0 (0xf0f6)
Error: Symbol dbus_message_append_args not found, cannot apply R_386_JMP_SLOT @0xab7227f4 (0xf106)
Error: Symbol dbus_connection_set_wakeup_main_function not found, cannot apply R_386_JMP_SLOT @0xab722804 (0xf146)
Error: Symbol gethostid not found, cannot apply R_386_JMP_SLOT @0xab722830 (0xf1f6)
Error: Symbol dbus_connection_set_watch_functions not found, cannot apply R_386_JMP_SLOT @0xab722834 (0xf206)
Error: Symbol dbus_pending_call_unref not found, cannot apply R_386_JMP_SLOT @0xab722840 (0xf236)
Error: Symbol dbus_message_new_error not found, cannot apply R_386_JMP_SLOT @0xab722868 (0xf2d6)
Error: Symbol dbus_watch_handle not found, cannot apply R_386_JMP_SLOT @0xab722874 (0xf306)
Error: Symbol dbus_message_new_method_call not found, cannot apply R_386_JMP_SLOT @0xab722888 (0xf356)
Error: Symbol xcb_get_setup not found, cannot apply R_386_JMP_SLOT @0xab7228bc (0xf426)
Error: Symbol dbus_watch_set_data not found, cannot apply R_386_JMP_SLOT @0xab7228f0 (0xf4f6)
Error: Symbol dbus_watch_get_unix_fd not found, cannot apply R_386_JMP_SLOT @0xab7228fc (0xf526)
Error: Symbol memfd_create not found, cannot apply R_386_JMP_SLOT @0xab72290c (0xf566)
Error: Symbol llrint not found, cannot apply R_386_JMP_SLOT @0xab722920 (0xf5b6)
Error: Symbol dbus_message_iter_next not found, cannot apply R_386_JMP_SLOT @0xab722928 (0xf5d6)
Error: Symbol dbus_message_unref not found, cannot apply R_386_JMP_SLOT @0xab722930 (0xf5f6)
Error: Symbol dbus_connection_set_dispatch_status_function not found, cannot apply R_386_JMP_SLOT @0xab7229b8 (0xf816)
Error: Symbol dbus_connection_read_write_dispatch not found, cannot apply R_386_JMP_SLOT @0xab7229d8 (0xf896)
Error: Symbol dbus_message_iter_open_container not found, cannot apply R_386_JMP_SLOT @0xab7229fc (0xf926)
Error: Symbol xcb_intern_atom_reply not found, cannot apply R_386_JMP_SLOT @0xab722a00 (0xf936)
Error: Symbol dbus_connection_send_with_reply_and_block not found, cannot apply R_386_JMP_SLOT @0xab722a08 (0xf956)
Error: Symbol xcb_get_property_value not found, cannot apply R_386_JMP_SLOT @0xab722a60 (0xfab6)
Error: Symbol dbus_watch_get_data not found, cannot apply R_386_JMP_SLOT @0xab722acc (0xfc66)
Error: Symbol posix_madvise not found, cannot apply R_386_JMP_SLOT @0xab722b20 (0xfdb6)
Error: Symbol xcb_get_property_reply not found, cannot apply R_386_JMP_SLOT @0xab722b64 (0xfec6)
Error: Symbol dbus_message_new_method_return not found, cannot apply R_386_JMP_SLOT @0xab722bb8 (0x10016)
Error: Symbol dbus_message_iter_close_container not found, cannot apply R_386_JMP_SLOT @0xab722be0 (0x100b6)
Error: Symbol dbus_error_init not found, cannot apply R_386_JMP_SLOT @0xab722be4 (0x100c6)
Error: Symbol dbus_type_is_basic not found, cannot apply R_386_JMP_SLOT @0xab722c14 (0x10186)
Error: Symbol dbus_message_iter_get_arg_type not found, cannot apply R_386_JMP_SLOT @0xab722c4c (0x10266)
Error: Symbol dbus_pending_call_cancel not found, cannot apply R_386_JMP_SLOT @0xab722ce0 (0x104b6)
Error: Symbol dbus_connection_dispatch not found, cannot apply R_386_JMP_SLOT @0xab722d18 (0x10596)
Error: Symbol xcb_change_property not found, cannot apply R_386_JMP_SLOT @0xab722d24 (0x105c6)
Error: Symbol dbus_watch_get_enabled not found, cannot apply R_386_JMP_SLOT @0xab722d38 (0x10616)
Error: Symbol xcb_screen_next not found, cannot apply R_386_JMP_SLOT @0xab722d9c (0x107a6)
Error: Symbol xcb_disconnect not found, cannot apply R_386_JMP_SLOT @0xab722da8 (0x107d6)
Error: Symbol personality not found, cannot apply R_386_JMP_SLOT @0xab722db0 (0x107f6)
Error: Symbol dbus_error_is_set not found, cannot apply R_386_JMP_SLOT @0xab722df0 (0x108f6)
Error: Symbol dbus_message_get_type not found, cannot apply R_386_JMP_SLOT @0xab722e04 (0x10946)
Error: Symbol xcb_get_property_value_length not found, cannot apply R_386_JMP_SLOT @0xab722e08 (0x10956)
Error: Symbol dbus_message_get_signature not found, cannot apply R_386_JMP_SLOT @0xab722e0c (0x10966)
Error: Symbol dbus_error_free not found, cannot apply R_386_JMP_SLOT @0xab722e20 (0x109b6)
Error: Symbol dbus_connection_ref not found, cannot apply R_386_JMP_SLOT @0xab722e24 (0x109c6)
Error: Symbol dbus_set_error_from_message not found, cannot apply R_386_JMP_SLOT @0xab722e80 (0x10b36)
Error: Symbol dbus_connection_get_server_id not found, cannot apply R_386_JMP_SLOT @0xab722eb0 (0x10bf6)
Error: Symbol dbus_message_get_args not found, cannot apply R_386_JMP_SLOT @0xab722f30 (0x10df6)
Error: Symbol pa_stream_connect_playback not found, cannot apply R_386_JMP_SLOT @0xab728f40 (0x1056)
Error: Symbol pa_stream_get_sample_spec not found, cannot apply R_386_JMP_SLOT @0xab728f44 (0x1066)
Error: Symbol pa_stream_set_latency_update_callback not found, cannot apply R_386_JMP_SLOT @0xab728f48 (0x1076)
Error: Symbol pa_threaded_mainloop_stop not found, cannot apply R_386_JMP_SLOT @0xab728f4c (0x1086)
Error: Symbol pa_operation_get_state not found, cannot apply R_386_JMP_SLOT @0xab728f54 (0x10a6)
Error: Symbol pa_stream_write not found, cannot apply R_386_JMP_SLOT @0xab728f58 (0x10b6)
Error: Symbol pa_context_connect not found, cannot apply R_386_JMP_SLOT @0xab728f5c (0x10c6)
Error: Symbol pa_context_disconnect not found, cannot apply R_386_JMP_SLOT @0xab728f60 (0x10d6)
Error: Symbol pa_context_get_state not found, cannot apply R_386_JMP_SLOT @0xab728f64 (0x10e6)
Error: Symbol pa_threaded_mainloop_get_api not found, cannot apply R_386_JMP_SLOT @0xab728f6c (0x1106)
Error: Symbol pa_threaded_mainloop_free not found, cannot apply R_386_JMP_SLOT @0xab728f70 (0x1116)
Error: Symbol pa_stream_set_write_callback not found, cannot apply R_386_JMP_SLOT @0xab728f74 (0x1126)
Error: Symbol pa_threaded_mainloop_signal not found, cannot apply R_386_JMP_SLOT @0xab728f78 (0x1136)
Error: Symbol pa_context_unref not found, cannot apply R_386_JMP_SLOT @0xab728f7c (0x1146)
Error: Symbol pa_context_errno not found, cannot apply R_386_JMP_SLOT @0xab728f80 (0x1156)
Error: Symbol pa_threaded_mainloop_unlock not found, cannot apply R_386_JMP_SLOT @0xab728f84 (0x1166)
Error: Symbol pa_stream_unref not found, cannot apply R_386_JMP_SLOT @0xab728f88 (0x1176)
Error: Symbol pa_stream_get_state not found, cannot apply R_386_JMP_SLOT @0xab728f8c (0x1186)
Error: Symbol pa_stream_new not found, cannot apply R_386_JMP_SLOT @0xab728f94 (0x11a6)
Error: Symbol pa_context_new not found, cannot apply R_386_JMP_SLOT @0xab728f98 (0x11b6)
Error: Symbol pa_threaded_mainloop_new not found, cannot apply R_386_JMP_SLOT @0xab728fa0 (0x11d6)
Error: Symbol pa_threaded_mainloop_lock not found, cannot apply R_386_JMP_SLOT @0xab728fa4 (0x11e6)
Error: Symbol pa_stream_set_state_callback not found, cannot apply R_386_JMP_SLOT @0xab728fa8 (0x11f6)
Error: Symbol pa_operation_unref not found, cannot apply R_386_JMP_SLOT @0xab728fb0 (0x1216)
Error: Symbol pa_operation_cancel not found, cannot apply R_386_JMP_SLOT @0xab728fb4 (0x1226)
Error: Symbol pa_threaded_mainloop_wait not found, cannot apply R_386_JMP_SLOT @0xab728fbc (0x1246)
Error: Symbol pa_threaded_mainloop_start not found, cannot apply R_386_JMP_SLOT @0xab728fc4 (0x1266)
Error: Symbol pa_stream_get_latency not found, cannot apply R_386_JMP_SLOT @0xab728fc8 (0x1276)
Error: Symbol pa_context_set_state_callback not found, cannot apply R_386_JMP_SLOT @0xab728fcc (0x1286)
Error: Symbol pa_stream_peek not found, cannot apply R_386_JMP_SLOT @0xab728fd0 (0x1296)
Error: Symbol pa_stream_connect_record not found, cannot apply R_386_JMP_SLOT @0xab728fd4 (0x12a6)
Error: Symbol pa_stream_drop not found, cannot apply R_386_JMP_SLOT @0xab728fd8 (0x12b6)
Error: Symbol pa_stream_writable_size not found, cannot apply R_386_JMP_SLOT @0xab728fdc (0x12c6)
Error: Symbol pa_stream_set_read_callback not found, cannot apply R_386_JMP_SLOT @0xab728fe4 (0x12e6)
Error: Symbol pa_stream_flush not found, cannot apply R_386_JMP_SLOT @0xab728fe8 (0x12f6)
Error: Symbol pa_stream_drain not found, cannot apply R_386_JMP_SLOT @0xab728fec (0x1306)
Error: Symbol pa_context_new not found, cannot apply R_386_JMP_SLOT @0xafbbff10 (0x2b2d16)
Error: Symbol pa_operation_get_state not found, cannot apply R_386_JMP_SLOT @0xafbbff44 (0x2b2de6)
Error: Symbol pa_stream_unref not found, cannot apply R_386_JMP_SLOT @0xafbbfffc (0x2b30c6)
Error: Symbol SDL_GameControllerMappingForGUID not found, cannot apply R_386_JMP_SLOT @0xafbc0064 (0x2b3266)
Error: Symbol pa_context_disconnect not found, cannot apply R_386_JMP_SLOT @0xafbc00bc (0x2b33c6)
Error: Symbol pa_stream_set_read_callback not found, cannot apply R_386_JMP_SLOT @0xafbc00d4 (0x2b3426)
Error: Symbol SDL_RWclose not found, cannot apply R_386_JMP_SLOT @0xafbc0148 (0x2b35f6)
Error: Symbol SDL_JoystickGetDeviceProduct not found, cannot apply R_386_JMP_SLOT @0xafbc019c (0x2b3746)
Error: Symbol pa_context_set_state_callback not found, cannot apply R_386_JMP_SLOT @0xafbc01d0 (0x2b3816)
Error: Symbol pa_stream_is_suspended not found, cannot apply R_386_JMP_SLOT @0xafbc01f0 (0x2b3896)
Error: Symbol pa_strerror not found, cannot apply R_386_JMP_SLOT @0xafbc0298 (0x2b3b36)
Error: Symbol SDL_ConvertPixels not found, cannot apply R_386_JMP_SLOT @0xafbc03b0 (0x2b3f96)
Error: Symbol pa_operation_unref not found, cannot apply R_386_JMP_SLOT @0xafbc041c (0x2b4146)
Error: Symbol pa_mainloop_iterate not found, cannot apply R_386_JMP_SLOT @0xafbc04d4 (0x2b4426)
Error: Symbol pa_mainloop_new not found, cannot apply R_386_JMP_SLOT @0xafbc04f0 (0x2b4496)
Error: Symbol SDL_WarpMouseGlobal not found, cannot apply R_386_JMP_SLOT @0xafbc0510 (0x2b4516)
Error: Symbol strtouq not found, cannot apply R_386_JMP_SLOT @0xafbc0518 (0x2b4536)
Error: Symbol pa_stream_readable_size not found, cannot apply R_386_JMP_SLOT @0xafbc0544 (0x2b45e6)
Error: Symbol pa_stream_get_device_name not found, cannot apply R_386_JMP_SLOT @0xafbc0588 (0x2b46f6)
Error: Symbol SDL_GameControllerGetBindForButton not found, cannot apply R_386_JMP_SLOT @0xafbc05a0 (0x2b4756)
Error: Symbol XScreenNumberOfScreen not found, cannot apply R_386_JMP_SLOT @0xafbc05a8 (0x2b4776)
Error: Symbol SDL_RWtell not found, cannot apply R_386_JMP_SLOT @0xafbc0650 (0x2b4a16)
Error: Symbol pa_stream_new not found, cannot apply R_386_JMP_SLOT @0xafbc069c (0x2b4b46)
Error: Symbol strtoq not found, cannot apply R_386_JMP_SLOT @0xafbc06d8 (0x2b4c36)
Error: Symbol pa_context_errno not found, cannot apply R_386_JMP_SLOT @0xafbc06e0 (0x2b4c56)
Error: Symbol pa_context_get_server_info not found, cannot apply R_386_JMP_SLOT @0xafbc06f8 (0x2b4cb6)
Error: Symbol pa_stream_set_state_callback not found, cannot apply R_386_JMP_SLOT @0xafbc070c (0x2b4d06)
Error: Symbol SDL_GameControllerMappingForDeviceIndex not found, cannot apply R_386_JMP_SLOT @0xafbc0758 (0x2b4e36)
Error: Symbol pa_context_get_sink_info_list not found, cannot apply R_386_JMP_SLOT @0xafbc077c (0x2b4ec6)
Error: Symbol pa_stream_get_context not found, cannot apply R_386_JMP_SLOT @0xafbc0854 (0x2b5226)
Error: Symbol SDL_CreateRGBSurfaceWithFormat not found, cannot apply R_386_JMP_SLOT @0xafbc0918 (0x2b5536)
Error: Symbol SDL_RWread not found, cannot apply R_386_JMP_SLOT @0xafbc09a8 (0x2b5776)
Error: Symbol pa_stream_get_device_index not found, cannot apply R_386_JMP_SLOT @0xafbc09c8 (0x2b57f6)
Error: Symbol pa_stream_connect_record not found, cannot apply R_386_JMP_SLOT @0xafbc0a04 (0x2b58e6)
Error: Symbol pa_mainloop_free not found, cannot apply R_386_JMP_SLOT @0xafbc0a54 (0x2b5a26)
Error: Symbol pa_stream_get_sample_spec not found, cannot apply R_386_JMP_SLOT @0xafbc0aa0 (0x2b5b56)
Error: Symbol SDL_GetGlobalMouseState not found, cannot apply R_386_JMP_SLOT @0xafbc0ac4 (0x2b5be6)
Error: Symbol SDL_GameControllerGetButtonFromString not found, cannot apply R_386_JMP_SLOT @0xafbc0ad4 (0x2b5c26)
Error: Symbol SDL_JoystickGetDeviceVendor not found, cannot apply R_386_JMP_SLOT @0xafbc0ae4 (0x2b5c66)
Error: Symbol SDL_UnlockJoysticks not found, cannot apply R_386_JMP_SLOT @0xafbc0b00 (0x2b5cd6)
Error: Symbol SDL_RWseek not found, cannot apply R_386_JMP_SLOT @0xafbc0b38 (0x2b5db6)
Error: Symbol pa_stream_get_state not found, cannot apply R_386_JMP_SLOT @0xafbc0b60 (0x2b5e56)
Error: Symbol pa_stream_peek not found, cannot apply R_386_JMP_SLOT @0xafbc0bac (0x2b5f86)
Error: Symbol pa_mainloop_get_api not found, cannot apply R_386_JMP_SLOT @0xafbc0c30 (0x2b6196)
Error: Symbol SDL_UnionRect not found, cannot apply R_386_JMP_SLOT @0xafbc0c64 (0x2b6266)
Error: Symbol pa_stream_drop not found, cannot apply R_386_JMP_SLOT @0xafbc0c7c (0x2b62c6)
Error: Symbol SDL_LockJoysticks not found, cannot apply R_386_JMP_SLOT @0xafbc0cec (0x2b6486)
Error: Symbol pa_context_get_state not found, cannot apply R_386_JMP_SLOT @0xafbc0d48 (0x2b65f6)
Error: Symbol pa_stream_get_channel_map not found, cannot apply R_386_JMP_SLOT @0xafbc0d9c (0x2b6746)
Error: Symbol pa_context_connect not found, cannot apply R_386_JMP_SLOT @0xafbc0db8 (0x2b67b6)
Error: Symbol pa_context_unref not found, cannot apply R_386_JMP_SLOT @0xafbc0e4c (0x2b6a06)
Warning: Cannot dlopen("/home/pi/.local/share/Steam/ubuntu12_32/filesystem_stdio"/0xaa2d29e8, 2)
Using emulated /home/pi/.local/share/Steam/ubuntu12_32/filesystem_stdio.so
Warning: Cannot dlopen("/home/pi/.local/share/Steam/ubuntu12_32/vgui2_s"/0xaa2d29e8, 2)
Using emulated /home/pi/.local/share/Steam/ubuntu12_32/vgui2_s.so
Using native(wrapped) libopenal.so.1
Error: Symbol XwcTextListToTextProperty not found, cannot apply R_386_JMP_SLOT @0xaadc6afc (0xa8b6)
Error: Symbol XAllocNamedColor not found, cannot apply R_386_JMP_SLOT @0xaadc6ce4 (0xb056)
Warning: Cannot dlopen("/home/pi/.local/share/Steam/ubuntu12_32/chromehtml"/0xaa2d29e8, 2)
Using emulated /home/pi/.local/share/Steam/ubuntu12_32/chromehtml.so
./steamTEMP.sh: line 730: 32167 Segmentation fault      BOX86_LD_LIBRARY_PATH="${x86_LIBS}":"${EXTRA_LIBS}":"${STEAM_I386}" $STEAM_DEBUGGER $BOX86_BIN "$STEAMROOT/$STEAMEXEPATH" "$@"

OlliOlli (Humble Bundle)

Test environment: Ubuntu 19.04 x86_64 with multilib enabled. Noveau driver. Same results with software rendering.

warning: Corrupted shared library list: 0xa82e6e80 != 0x0
Using native(wrapped) libpng12.so.0
IMG_LoadPNG_RW failed!
Loading keys icons: 0

Thread 1 "box86" received signal SIGSEGV, Segmentation fault.
Run (emu=0xa8113d10) at /usr/src/box86/src/emu/x86run.c:629
629     /usr/src/box86/src/emu/x86run.c: No such file or directory.
(gdb) bt
#0  Run (emu=0xa8113d10) at /usr/src/box86/src/emu/x86run.c:629
#1  0xa8028dae in main (argc=<optimised out>, argv=<optimised out>, env=<optimised out>) at /usr/src/box86/src/main.c:450

I installed libudev1:i386 but I still get the following log:
log.txt

I need some help!

Hey!
Firstly, I don't know if I posted this in the right place but anyways, is this masterpiece available for Raspbian on Raspberry Pi? I successfully compiled the repo as stated in compiling readme, but I don't know how to use the program. I'm not an experienced linux user and couldn't find any related topics.
Thanks for help!

Broken Age (Humble Bundle)

Test environment: Raspberry Pi 4, Raspbian 10.

$ BOX86_LD_LIBRARY_PATH=./lib ~/src/box86/build/box86 BrokenAge 
BOX86_LD_LIBRARY_PATH: ./lib/
Using default BOX86_PATH: ./:bin/
Counted 45 Env var
Looking for BrokenAge
Using emulated ./lib/libfmodex-4.42.16.so
Using emulated ./lib/libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using emulated ./lib/libgcc_s.so.1
Using emulated ./lib/libfmodevent-4.42.16.so
Using native(wrapped) libdl.so.2
Using native(wrapped) libSDL2-2.0.so.0
Using native(wrapped) libGL.so.1
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb64a9198 (0x6b666)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb64a9474 (0x6c1d6)
Error: Symbol mktemp not found, cannot apply R_386_JMP_SLOT @0x895669c (0x82a5cf6)
Error: Symbol SDL_JoystickGetGUID not found, cannot apply R_386_JMP_SLOT @0x8956708 (0x82a5ea6)
Warning, no wrapper for glDebugMessageCallbackARB

Briefly displays a transparent window and then exits.

Same on my x86 test setup.

MoH:AA Server with Pi4

Is it possible to run a Medal of Honor Allied Assault server out of box86? It's a 2000-ish game, pretty "old" but i think it's feasible. Can you shed some light on how to?

Shovelknight: missing symbols (sdl2), ptlresolver

pi@raspberrypi:/media/pi/Seagate Expansion Drive/linux-games/Shovel_Knight_GOG/data/noarch/game/32 $ BOX86_LD_LIBRARY_PATH=.:fmod/lib/:/lib:./lib:.:./lib32:lib/lib32:/usr/i686-linux-gnu/lib:i386/lib/i386-linux-gnu:/usr/lib/arm-linux-gnueabihf box86 ShovelKnight 
BOX86_LD_LIBRARY_PATH: ./:fmod/lib/:/lib/:./lib/:./:./lib32/:lib/lib32/:/usr/i686-linux-gnu/lib/:i386/lib/i386-linux-gnu/:/usr/lib/arm-linux-gnueabihf/
Using default BOX86_PATH: ./:bin/
Counted 45 Env var
Looking for ShovelKnight
Using native(wrapped) libpthread.so.0
Using emulated ./lib/libfmodex.so
Using native(wrapped) libdl.so.2
Using emulated /usr/i686-linux-gnu/lib/libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) librt.so.1
Using emulated /usr/i686-linux-gnu/lib/libgcc_s.so.1
Using emulated ./lib/libfmodevent.so
Using emulated ./lib/libfmodex-4.44.33.so
Using emulated ./lib/libBox2D.so.2.1.0
Using emulated ./lib/libGLEW.so.1.10
Using native(wrapped) libGL.so.1
Using native(wrapped) libSDL2-2.0.so.0
Error: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb68b3198 (0x6b676)
Error: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb68b3474 (0x6c1e6)
Error: Symbol SDL_JoystickGetGUIDFromString not found, cannot apply R_386_JMP_SLOT @0x891401c (0x804e026)
Error: Symbol SDL_SetEventFilter not found, cannot apply R_386_JMP_SLOT @0x89140f0 (0x804e376)
Error: Symbol SDL_AtomicCAS not found, cannot apply R_386_JMP_SLOT @0x89142c0 (0x804eab6)
ycMemory::Init()
PltResolver: Ofs=0x87de103, Id=456 (IP=(nil)

sorry about the long command at the start, its leftover from the other games i tested :)

Dynarec gives segfault on gameshell

I've been trying for a few days to get your project running for a few days on the gameshell, and so far have seen some success (I was able to start a few games, including super meat boy and vvvvvv, for example), with limited performance, as expected (minutes long load times, 1 or 2 fps when lucky).

However, the dynarec does not seem to work, as enabling it just segfaults almost immediately.
Build on today's head b4a98f6 with only the -DARM_DYNAREC=1 option

Here's the log (No trace, will recompile with it if needed) :

BOX86_LOG=1 BOX86_DYNAREC=1 BOX86_DYNAREC_LOG=3 ~/code/box86/build/box86 x86/vvvvvv.x86
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using emulated libgcc_s.so.1
Error: Symbol sendfile not found, cannot apply R_386_JMP_SLOT @0xb5c37170 (0x755c6)
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb5c371f8 (0x757e6)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb5c37560 (0x76586)
Ask for DynaRec Block creation @0x805b780
Ask for DynaRec Block Alloc #1
Emitting 112 bytes for 28 x86 bytes
0x805b780: 55  PUSH reg
        e9280200        STMDB r8!,{r9}
0x805b781: 89 E5  MOV Ed, Gd
        e1a09008        MOV r9, r8
0x805b783: 57  PUSH reg
        e9280800        STMDB r8!,{r11}
0x805b784: 56  PUSH reg
        e9280400        STMDB r8!,{r10}
0x805b785: 53  PUSH reg
        e9280080        STMDB r8!,{r7}
0x805b786: 83 E4 F0  AND Ed, Ib
        e30f3ff0        MOVW r3, #0xfff0
        e34f3fff        MOVT r3, #0xffff
        e0088003        AND r8, r8, r3
0x805b789: 81 EC 50 15 00 00  SUB Ed, Id
        e3013550        MOVW r3, #0x1550
        e580836c        STR r8, [r0, #876]
        e5803370        STR r3, [r0, #880]
        e0488003        SUB r8, r8, r3
        e5808374        STR r8, [r0, #884]
        e3003024        MOVW r3, #0x24
        e5803368        STR r3, [r0, #872]
0x805b78f: 8B 5D 0C  MOV Gd, Ed
        e289200c        ADD r2, r9, #12
        e5927000        LDR r7, [r2]
0x805b792: 8B 03  MOV Gd, Ed
        e5974000        LDR r4, [r7]
0x805b794: 89 04 24  MOV Ed, Gd
        e5884000        STR r4, [r8]
0x805b797: E8 54 F5 02 00  CALL Id
        e30b279c        MOVW r2, #0xb79c
        e3402805        MOVT r2, #0x805
        e9280004        STMDB r8!,{r2}
Jump to linker (#0)
        e30accf0        MOVW r12, #0xacf0
        e340c808        MOVT r12, #0x808
        e3061350        MOVW r1, #0x6350
        e34a1826        MOVT r1, #0xa826
        e5912000        LDR r2, [r1]
        e12fff12        BX r2
 --- DynaRec Block created @0x805b780 (0xb5281000, 0x70 bytes)
Running DynaRec Block @0x805b780 (0xb5281000) emu=0xa817c698
Segmentation faultDebug level is 1
Dynarec log level is 3
Dynarec is On
Using default BOX86_LD_LIBRARY_PATH: ./:lib/
Using default BOX86_PATH: ./:bin/
Counted 22 Env var
Looking for x86/vvvvvv.x86
Using native(wrapped) libSDL2-2.0.so.0
Using native(wrapped) libSDL2_mixer-2.0.so.0
Using emulated libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using emulated libgcc_s.so.1
Error: Symbol sendfile not found, cannot apply R_386_JMP_SLOT @0xb5c25170 (0x755c6)
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb5c251f8 (0x757e6)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb5c25560 (0x76586)
Ask for DynaRec Block creation @0x805b780
Ask for DynaRec Block Alloc #1
Emitting 112 bytes for 28 x86 bytes
0x805b780: 55  PUSH reg
        e9280200        STMDB r8!,{r9}
0x805b781: 89 E5  MOV Ed, Gd
        e1a09008        MOV r9, r8
0x805b783: 57  PUSH reg
        e9280800        STMDB r8!,{r11}
0x805b784: 56  PUSH reg
        e9280400        STMDB r8!,{r10}
0x805b785: 53  PUSH reg
        e9280080        STMDB r8!,{r7}
0x805b786: 83 E4 F0  AND Ed, Ib
        e30f3ff0        MOVW r3, #0xfff0
        e34f3fff        MOVT r3, #0xffff
        e0088003        AND r8, r8, r3
0x805b789: 81 EC 50 15 00 00  SUB Ed, Id
        e3013550        MOVW r3, #0x1550
        e580836c        STR r8, [r0, #876]
        e5803370        STR r3, [r0, #880]
        e0488003        SUB r8, r8, r3
        e5808374        STR r8, [r0, #884]
        e3003024        MOVW r3, #0x24
        e5803368        STR r3, [r0, #872]
0x805b78f: 8B 5D 0C  MOV Gd, Ed
        e289200c        ADD r2, r9, #12
        e5927000        LDR r7, [r2]
0x805b792: 8B 03  MOV Gd, Ed
        e5974000        LDR r4, [r7]
0x805b794: 89 04 24  MOV Ed, Gd
        e5884000        STR r4, [r8]
0x805b797: E8 54 F5 02 00  CALL Id
        e30b279c        MOVW r2, #0xb79c
        e3402805        MOVT r2, #0x805
        e9280004        STMDB r8!,{r2}
Jump to linker (#0)
        e30accf0        MOVW r12, #0xacf0
        e340c808        MOVT r12, #0x808
        e3061350        MOVW r1, #0x6350
        e34a1826        MOVT r1, #0xa826
        e5912000        LDR r2, [r1]
        e12fff12        BX r2
 --- DynaRec Block created @0x805b780 (0xb526f000, 0x70 bytes)
Running DynaRec Block @0x805b780 (0xb526f000) emu=0xa817c698
Segmentation fault

Thank you 👍

Half-Life (Steam)

Note 1: This test was run on Ubuntu 19.04 with box86 built in a 32 bit chroot, and multilib enabled on the host system

Note 2: before testing Steam games, set your status to Offline/Invisible to save your friends messaging you asking why you started one game 20+ times...

This seems to require a lot of dependencies:
libopenal1:i386 libfontconfig1:i386 libgtk2.0-0:i386 libnss3:i386 and libpng12 from https://packages.ubuntu.com/xenial-updates/libpng12-0
Also, symlink libgcrypt.so.20 to libgcrypt.so.11.

Then, a lot of missing symbols, followed by a crash. I wonder how much of this is Steam related, and if I could get a non-Steam version of the game it'd run...

log.txt

Dropbox in Box86

Hi,

I am trying to run Dropbox (headless) in box86 as it is too slow under qemu to be of any use. However, I run it this way:

BOX86_LD_LIBRARY_PATH=.:lib:/usr/i686-linux-gnu/lib box86 /root/.dropbox-dist/dropbox-lnx.x86-74.4.115/dropbox.

Where /usr/i686-linux-gnu contains the i386 libc and other libs (ubuntu package libc6-i386-cross).
However, it crashes with the following error messages:

BOX86_LD_LIBRARY_PATH: ./:lib/:/usr/i686-linux-gnu/lib/
Using default BOX86_PATH: ./:bin/
Counted 12 Env var
Looking for /root/.dropbox-dist/dropbox-lnx.x86-74.4.115/dropbox.i686
Using native(wrapped) libpthread.so.0
Using native(wrapped) libdl.so.2
Using emulated /usr/i686-linux-gnu/lib/libutil.so.1
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) librt.so.1
Using native(wrapped) libm.so.6
Warning, don't know of to handle rel #2 type: 0xe (unknown) (0xb6f42ff0)
Error: Symbol grantpt not found, cannot apply R_386_JMP_SLOT @0xb6f43010 (0x1056)
Error: Symbol endutent not found, cannot apply R_386_JMP_SLOT @0xb6f43014 (0x1066)
Error: Symbol pututline not found, cannot apply R_386_JMP_SLOT @0xb6f43024 (0x10a6)
Error: Symbol ptsname_r not found, cannot apply R_386_JMP_SLOT @0xb6f43028 (0x10b6)
Error: Symbol ttyname_r not found, cannot apply R_386_JMP_SLOT @0xb6f43050 (0x1156)
Error: Symbol setutent not found, cannot apply R_386_JMP_SLOT @0xb6f43054 (0x1166)
Error: Symbol unlockpt not found, cannot apply R_386_JMP_SLOT @0xb6f43064 (0x11a6)
Error: Symbol utmpname not found, cannot apply R_386_JMP_SLOT @0xb6f43068 (0x11b6)
Error: Symbol updwtmp not found, cannot apply R_386_JMP_SLOT @0xb6f4306c (0x11c6)
Error: Symbol getutline_r not found, cannot apply R_386_JMP_SLOT @0xb6f43070 (0x11d6)
Error: Symbol getpt not found, cannot apply R_386_JMP_SLOT @0xb6f43074 (0x11e6)
Error: Symbol fexecve not found, cannot apply R_386_JMP_SLOT @0xb6c46060 (0x6e596)
Error: Symbol siginterrupt not found, cannot apply R_386_JMP_SLOT @0xb6c460d4 (0x6e766)
Error: Symbol llistxattr not found, cannot apply R_386_JMP_SLOT @0xb6c460f4 (0x6e7e6)
Error: Symbol ttyname not found, cannot apply R_386_JMP_SLOT @0xb6c46134 (0x6e8e6)
Error: Symbol getgrouplist not found, cannot apply R_386_JMP_SLOT @0xb6c46174 (0x6e9e6)
Error: Symbol sched_setscheduler not found, cannot apply R_386_JMP_SLOT @0xb6c46184 (0x6ea26)
Error: Symbol sched_getscheduler not found, cannot apply R_386_JMP_SLOT @0xb6c46198 (0x6ea76)
Error: Symbol fremovexattr not found, cannot apply R_386_JMP_SLOT @0xb6c461b0 (0x6ead6)
Error: Symbol ctermid not found, cannot apply R_386_JMP_SLOT @0xb6c461e0 (0x6eb96)
Error: Symbol __xmknodat not found, cannot apply R_386_JMP_SLOT @0xb6c461f8 (0x6ebf6)
Error: Symbol lsetxattr not found, cannot apply R_386_JMP_SLOT @0xb6c461fc (0x6ec06)
Error: Symbol mkdirat not found, cannot apply R_386_JMP_SLOT @0xb6c46208 (0x6ec36)
Error: Symbol getloadavg not found, cannot apply R_386_JMP_SLOT @0xb6c4620c (0x6ec46)
Error: Symbol fgetxattr not found, cannot apply R_386_JMP_SLOT @0xb6c46210 (0x6ec56)
Error: Symbol renameat not found, cannot apply R_386_JMP_SLOT @0xb6c46214 (0x6ec66)
Error: Symbol sigwait not found, cannot apply R_386_JMP_SLOT @0xb6c46244 (0x6ed26)
Error: Symbol fchownat not found, cannot apply R_386_JMP_SLOT @0xb6c4624c (0x6ed46)
Error: Symbol tcsetpgrp not found, cannot apply R_386_JMP_SLOT @0xb6c4625c (0x6ed86)
Error: Symbol getservbyport not found, cannot apply R_386_JMP_SLOT @0xb6c46260 (0x6ed96)
Error: Symbol sigwaitinfo not found, cannot apply R_386_JMP_SLOT @0xb6c46280 (0x6ee16)
Error: Symbol __wcsncpy_chk not found, cannot apply R_386_JMP_SLOT @0xb6c46290 (0x6ee56)
Error: Symbol openat64 not found, cannot apply R_386_JMP_SLOT @0xb6c46294 (0x6ee66)
Error: Symbol fchmodat not found, cannot apply R_386_JMP_SLOT @0xb6c462a0 (0x6ee96)
Error: Symbol symlinkat not found, cannot apply R_386_JMP_SLOT @0xb6c462d8 (0x6ef76)
Error: Symbol if_nameindex not found, cannot apply R_386_JMP_SLOT @0xb6c46304 (0x6f026)
Error: Symbol readlinkat not found, cannot apply R_386_JMP_SLOT @0xb6c46324 (0x6f0a6)
Error: Symbol removexattr not found, cannot apply R_386_JMP_SLOT @0xb6c46328 (0x6f0b6)
Error: Symbol tcgetpgrp not found, cannot apply R_386_JMP_SLOT @0xb6c46334 (0x6f0e6)
Error: Symbol flistxattr not found, cannot apply R_386_JMP_SLOT @0xb6c46338 (0x6f0f6)
Error: Symbol setxattr not found, cannot apply R_386_JMP_SLOT @0xb6c46344 (0x6f126)
Error: Symbol preadv64 not found, cannot apply R_386_JMP_SLOT @0xb6c46388 (0x6f236)
Error: Symbol sched_getparam not found, cannot apply R_386_JMP_SLOT @0xb6c46390 (0x6f256)
Error: Symbol __open64_2 not found, cannot apply R_386_JMP_SLOT @0xb6c4643c (0x6f506)
Error: Symbol accept4 not found, cannot apply R_386_JMP_SLOT @0xb6c46448 (0x6f536)
Error: Symbol lremovexattr not found, cannot apply R_386_JMP_SLOT @0xb6c46468 (0x6f5b6)
Error: Symbol posix_fallocate64 not found, cannot apply R_386_JMP_SLOT @0xb6c46478 (0x6f5f6)
Error: Symbol fsetxattr not found, cannot apply R_386_JMP_SLOT @0xb6c46498 (0x6f676)
Error: Symbol mkfifoat not found, cannot apply R_386_JMP_SLOT @0xb6c464b0 (0x6f6d6)
Error: Symbol getxattr not found, cannot apply R_386_JMP_SLOT @0xb6c464bc (0x6f706)
Error: Symbol pause not found, cannot apply R_386_JMP_SLOT @0xb6c464f4 (0x6f7e6)
Error: Symbol lgetxattr not found, cannot apply R_386_JMP_SLOT @0xb6c46510 (0x6f856)
Error: Symbol faccessat not found, cannot apply R_386_JMP_SLOT @0xb6c46518 (0x6f876)
Error: Symbol if_freenameindex not found, cannot apply R_386_JMP_SLOT @0xb6c46544 (0x6f926)
Error: Symbol sigtimedwait not found, cannot apply R_386_JMP_SLOT @0xb6c4657c (0x6fa06)
Error: Symbol lockf64 not found, cannot apply R_386_JMP_SLOT @0xb6c46590 (0x6fa56)
Error: Symbol unlinkat not found, cannot apply R_386_JMP_SLOT @0xb6c46594 (0x6fa66)
Error: Symbol linkat not found, cannot apply R_386_JMP_SLOT @0xb6c46598 (0x6fa76)
Error: Symbol listxattr not found, cannot apply R_386_JMP_SLOT @0xb6c465d8 (0x6fb76)
Error: Symbol futimens not found, cannot apply R_386_JMP_SLOT @0xb6c465ec (0x6fbc6)
Error: Symbol getitimer not found, cannot apply R_386_JMP_SLOT @0xb6c465f4 (0x6fbe6)
Error: Symbol confstr not found, cannot apply R_386_JMP_SLOT @0xb6c46600 (0x6fc16)
Error: Symbol __fxstatat64 not found, cannot apply R_386_JMP_SLOT @0xb6c46604 (0x6fc26)
Error: Symbol pthread_getcpuclockid not found, cannot apply R_386_JMP_SLOT @0xb6c46610 (0x6fc56)
Error: Symbol __sched_cpualloc not found, cannot apply R_386_JMP_SLOT @0xb6c46624 (0x6fca6)
Error: Symbol __sched_cpufree not found, cannot apply R_386_JMP_SLOT @0xb6c46628 (0x6fcb6)
Error: Symbol sched_rr_get_interval not found, cannot apply R_386_JMP_SLOT @0xb6c46640 (0x6fd16)
Error: Symbol sched_setparam not found, cannot apply R_386_JMP_SLOT @0xb6c4664c (0x6fd46)
Error: Symbol pwritev64 not found, cannot apply R_386_JMP_SLOT @0xb6c46650 (0x6fd56)
dropbox: locating interpreter
dropbox: logging to /tmp/dropbox-antifreeze-fABMYL
dropbox: initializing
dropbox: initializing python 3.7.2
dropbox: setting program path '/root/.dropbox-dist/dropbox-lnx.x86-74.4.115/dropbox.i686'
dropbox: setting home path '/root/.dropbox-dist/dropbox-lnx.x86-74.4.115'
dropbox: setting python path '/root/.dropbox-dist/dropbox-lnx.x86-74.4.115:/root/.dropbox-dist/dropbox-lnx.x86-74.4.115/python-packages-37.zip'
Segmentation fault (core dumped)

What is wrong here? The installed libraries I try to use?
It would be nice to have some more standard libraries natively wrapped like libc6, libssl and so on.

Segmentation Fault on Raspbian

I built the project according to the compiling guide for other ARM machine. It built successfully. Running the resulting binary always seems to result in a segmentation fault. I was going to try running the Steam binary with it but even running with no input gives a segmentation fault. I tried BOX86_LOG=2 and got no additional messages before segfault.

I'm running Raspbian on a Raspberry Pi 3 model B.

I also tried to build using aarch64 Gentoo also on the Pi 3 but there were build errors.

Shovel Knight Regression

Shovel Knight (shovel_knight_treasure_trove_4_0a_34523.sh from GOG) regressed with commit dfaa3d6.

The fixes break the collision and make the character drop into the floor as see in the second screenshot.

Included debug logs from:

  1. When all was working correctly.
    1_working_9df95f96c2fa1041429014dd29b240be5fb99708.zip
    1_working_9df95f96c2fa1041429014dd29b240be5fb99708

  2. Commit that broke the collision.
    2_bissect_dfaa3d6e8ae2aead2f00296e9fad22a55cf35b59.zip
    2_bissect_dfaa3d6e8ae2aead2f00296e9fad22a55cf35b59

  3. Current master at the date of today, which also have the same regression.
    3_current_master_3497a9e081edd67ca9c7355b978fe1f423a6cfe2.zip

FreeLibrary name conflict

FreeLibrary conflicts with win32 FreeLibrary function. Maybe choose different name? Even if box86 will not be ported to win32, it conflicts with win32 implementations in same binary

Error message about file not being found is unclear

pi@raspberrypi:/media/pi/A/ioquake3 $ BOX86_PATH=`pwd` ~/src/box86/build/box86 ioquake3.x86.exe
Using default BOX86_LD_LIBRARY_PATH: ./:lib/
BOX86_PATH: /media/pi/A/ioquake3/
Counted 45 Env var
Looking for ioquake3.x86.exe
Error: file /media/pi/A/ioquake3/ioquake3.x86.exe is not found

pi@raspberrypi:/media/pi/A/ioquake3 $ ls -lah ioquake3.x86.exe 
-r-------- 1 pi pi 1.4M Feb  4  2019 ioquake3.x86.exe

What's required to attempt to launch a binary?

Super Hexagon (Weak symbol and segfault)

Trying to run Super Hexagon (x86 version) triggers some weak symbol warnings and a segmentation fault:

jorgetech@orangepizero:~/box86/build$ LD_LIBRARY_PATH=/usr/local/lib/gl4es/ BOX86_LD_LIBRARY_PATH=/home/jorgetech/superhexagon/x86/ ./box86 /home/jorgetech/superhexagon/x86/superhexagon.x86
BOX86_LD_LIBRARY_PATH: /home/jorgetech/superhexagon/x86/
Using default BOX86_PATH: ./:bin/
Counted 63 Env var
Looking for /home/jorgetech/superhexagon/x86/superhexagon.x86
LIBGL: Initialising gl4es
LIBGL: v1.1.3 built on Nov 28 2019 13:33:44
LIBGL: Using GLES 2.0 backend
LIBGL: loaded: libGLESv2.so
LIBGL: loaded: libEGL.so
LIBGL: Using GLES 2.0 backend
LIBGL: Error while gathering supported extension (eglInitialize: EGL_BAD_DISPLAY), default to none
LIBGL: Targeting OpenGL 2.0
LIBGL: Not trying to batch small subsequent glDrawXXXX
LIBGL: try to use VBO
LIBGL: glX Will try to recycle EGL Surface
LIBGL: Current folder is:/home/jorgetech/box86/build
Using native(wrapped) libGL.so.1
Using native(wrapped) libGLU.so.1
Using emulated /home/jorgetech/superhexagon/x86/libglut.so.3
Using native(wrapped) libXext.so.6
Using native(wrapped) libX11.so.6
Using native(wrapped) libxcb.so.1
Using native(wrapped) libXau.so.6
Using native(wrapped) libXdmcp.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libXi.so.6
Using native(wrapped) libXxf86vm.so.1
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using emulated /home/jorgetech/superhexagon/x86/libGLEW.so.1.6
Using native(wrapped) libopenal.so.1
Using native(wrapped) libvorbisfile.so.3
Using emulated /home/jorgetech/superhexagon/x86/libstdc++.so.6
Using emulated /home/jorgetech/superhexagon/x86/libgcc_s.so.1
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb4db0bcc (0x6b580)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb4db0eb0 (0x6c110)
Segmentation fault

More detailed logs are attached.
debug.log
dump.log

Skullgirls (Humble Bundle Version) Segfaults after loading GL

I finally got Bit Trip Runner working on box86 so I decided to try running other games from my Humble library. Skullgirls looked promising at first but ultimately segfaulted. I switched from my Raspberry Pi 3 B+ to a new board, the Rock Pi 4B. This board has the Rockchip RK3399 with Mali Midgard graphics, running Debian Stretch. I have gl4es installed and working (tested with glxgears and several other OpenGL apps, including Bit Trip Runner on box86). I had to move the libraries out of the i386 folder for box86 to see them and launch with LIBGL_GL=21 for the game to not quit with an OpenGL version error popup.

Here is the output of box86 when I try to run the game:

adam@Adam-RockPi:~/Skullgirls/SkullGirls$ LIBGL_GL=21 ~/box86/build/box86 SkullGirls.i686-pc-linux-gnu 
Using default BOX86_LD_LIBRARY_PATH: ./:lib/
Using default BOX86_PATH: ./:bin/
Counted 41 Env var
Looking for SkullGirls.i686-pc-linux-gnu
Using native(wrapped) libpthread.so.0
Using native(wrapped) libSDL2-2.0.so.0
Using native(wrapped) libSDL2_mixer-2.0.so.0
Using emulated lib/libSDL2_locale.so.0
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) librt.so.1
Using emulated /usr/lib/i386-linux-gnu/libstdc++.so.6
Using emulated /lib/i386-linux-gnu/libgcc_s.so.1
Error: Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xf6268194 (0x6abc6)
Error: Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xf6268468 (0x6b716)
LIBGL: Initialising gl4es
LIBGL: v1.1.1 built on Apr 25 2019 03:04:24
LIBGL: Using GLES 2.0 backend
LIBGL: loaded: libGLESv2.so
LIBGL: loaded: libEGL.so
LIBGL: Using GLES 2.0 backend
LIBGL: Hardware Full NPOT detected and used
LIBGL: Extension GL_EXT_blend_minmax detected and used
LIBGL: FBO are in core, and so used
LIBGL: PointSprite are in core, and so used
LIBGL: CubeMap are in core, and so used
LIBGL: BlendColor is in core, and so used
LIBGL: Blend Substract is in core, and so used
LIBGL: Blend Function and Equation Separation is in core, and so used
LIBGL: Texture Mirrored Repeat is in core, and so used
LIBGL: Extension GL_OES_mapbuffer detected
LIBGL: Extension GL_OES_element_index_uint detected and used
LIBGL: Extension GL_OES_packed_depth_stencil detected and used
LIBGL: Extension GL_OES_depth24 detected and used
LIBGL: Extension GL_OES_rgb8_rgba8 detected and used
LIBGL: Extension GL_EXT_texture_format_BGRA8888 detected and used
LIBGL: Extension GL_OES_depth_texture detected and used
LIBGL: Extension GL_OES_texture_stencil8 detected and used
LIBGL: Extension GL_EXT_texture_rg detected and used
LIBGL: Extension GL_EXT_color_buffer_float detected and used
LIBGL: Extension GL_EXT_color_buffer_half_float detected and used
LIBGL: high precision float in fragment shader available and used
LIBGL: Max vertex attrib: 16
LIBGL: Extension GL_OES_standard_derivatives detected and used
LIBGL: Max texture size: 8192
LIBGL: Max Varying Vector: 15
LIBGL: Texture Units: 8(8), Max lights: 8, Max planes: 6
LIBGL: Hardware vendor is ARM
LIBGL: sRGB surface supported
LIBGL: Targeting OpenGL 2.1
LIBGL: glXMakeCurrent FBO workaround enabled
LIBGL: FBO workaround for using binded texture enabled
LIBGL: glX Will try to recycle EGL Surface
LIBGL: Current folder is:/home/adam/Skullgirls/SkullGirls
Segmentation fault

I have a used, hackable Nintendo Switch arriving tomorrow, and with the recent announcement of fully functional Linux on the Switch, I plan to do some testing on it. I will try box86 on it to see if the nVidia GPU drivers help at all.

Trine enchanted edition: fails to boot, missing symbols, ptlresolver

Trying to run trine produces this error

BOX86_LD_LIBRARY_PATH=.:lib/lib32:lib:lib/lib:x86:lib32:/usr/i686-linux-gnu/lib:/usr/lib/arm-linux-gnueabihf box86 trine1_linux_32bit 
BOX86_LD_LIBRARY_PATH: ./:lib/lib32/:lib/:lib/lib/:x86/:lib32/:/usr/i686-linux-gnu/lib/:/usr/lib/arm-linux-gnueabihf/
Using default BOX86_PATH: ./:bin/
Counted 45 Env var
Looking for trine1_linux_32bit
Using emulated lib/lib32/libCg.so
Using native(wrapped) libm.so.6
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) librt.so.1
Using emulated lib/lib32/libCgGL.so
Using native(wrapped) libogg.so.0
Using native(wrapped) libGL.so.1
Using native(wrapped) libGLU.so.1
Using emulated libfreetype.so.6
Using native(wrapped) libpng16.so.16
Using native(wrapped) libz.so.1
Using native(wrapped) libdl.so.2
Using native(wrapped) libasound.so.2
Using emulated /usr/i686-linux-gnu/lib/libstdc++.so.6
Using emulated /usr/i686-linux-gnu/lib/libgcc_s.so.1
Error: Symbol png_set_read_user_transform_fn not found, cannot apply R_386_JMP_SLOT @0xb5e26e84 (0x6456)
Error: Symbol png_set_read_fn not found, cannot apply R_386_JMP_SLOT @0xb5e26e88 (0x6466)
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb5bd8198 (0x6b676)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb5bd8474 (0x6c1e6)
Error: Symbol pthread_setschedprio not found, cannot apply R_386_JMP_SLOT @0xa05c3f4 (0x805d436)
Error: Symbol ilogb not found, cannot apply R_386_JMP_SLOT @0xa05c588 (0x805da86)
Error: Symbol fabsf not found, cannot apply R_386_JMP_SLOT @0xa05c730 (0x805e126)
PltResolver: Ofs=0x8bc912e, Id=2024 (IP=(nil))

and this is from the debug log

9649|0x8bc5765: Calling pthread_create (AA000BA8, 00000000, 08BC5400...) =>Allocate a new X86 Emu, with EIP=0x8bc5400 and Stack=0xb53c3008/0x200000
Setup X86 Emu
 return 0x00000000
 ...  =>Run X86 (0xaa000bc8), EIP=0x8bc5400, Stack=0xb6bba008
PltResolver: Ofs=0x8bc912e, Id=2024 (IP=(nil)) return 0xB53C2450
Emulation finished, EAX=-1254349744
Free a X86 Emu (0xa9caeb20)
9651|0x871e9aa: Calling __errno_location (00000000, 00000000, 00000000...) => return 0xB53C2930
Segmentation fault

Guacamelee (Steam)

This was listed as a DRM-free title, but I guess not...

Looking for /home/voltagex/.local/share/Steam/steamapps/common/Guacamelee/game-bin                       
Using native(wrapped) libpthread.so.0                                                               
Using native(wrapped) libGL.so.1                                                             
Using emulated /home/voltagex/.local/share/Steam/steamapps/common/Guacamelee/lib32/libfmodevent-4.44.27.so                                                                                                 
Using emulated /home/voltagex/.local/share/Steam/steamapps/common/Guacamelee/lib32/libfmodex-4.44.27.so                                                                                                    
Using native(wrapped) libdl.so.2                                                                  
Using emulated /usr/lib/i386-linux-gnu/libstdc++.so.6                                                          
Using native(wrapped) libm.so.6                                                                    
Using native(wrapped) libc.so.6                                                                 
Using native(wrapped) ld-linux.so.2                                                                    
Using native(wrapped) librt.so.1                                                                 
Using emulated /lib/i386-linux-gnu/libgcc_s.so.1                                                      
Using native(wrapped) libSDL2-2.0.so.0                                                            
Using emulated /home/voltagex/.local/share/Steam/steamapps/common/Guacamelee/lib32/libsteam_api.so      
Error: Symbol sendfile not found, cannot apply R_386_JMP_SLOT @0xf769d170 (0x755c6)                     
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xf769d1fc (0x757f6)         
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xf769d560 (0x76586)                             
Error: Symbol pthread_attr_setaffinity_np not found, cannot apply R_386_JMP_SLOT @0x8c3a090 (0x804c0e6)                                                                                                    
Error: Symbol SDL_NumHaptics not found, cannot apply R_386_JMP_SLOT @0x8c3a178 (0x804c486)            
Error: Symbol __wcscat_chk not found, cannot apply R_386_JMP_SLOT @0x8c3a374 (0x804cc76)                                                                                                                    
Error: Symbol __mbrlen not found, cannot apply R_386_JMP_SLOT @0x8c3a3ac (0x804cd56)
Error: Symbol pthread_condattr_setpshared not found, cannot apply R_386_JMP_SLOT @0x8c3a3cc (0x804cdd6)                                                                                                    
Using emulated /home/voltagex/.local/share/Steam/linux32/steamclient.so                                                                                                                                     
Warning: partially unimplement call to dladdr(0xf5c518f0, 0xf7c87250)                     
Warning: partially unimplement call to dladdr(0xf5d70910, 0xf7c8a370)                               
Steam Error: Application load error 3:0000067431     

Jamestown (Humble Bundle)

Version 1.0.2 seems to be accidentally linked against Steam...
https://bugzilla.icculus.org/show_bug.cgi?id=6036

I'm unsure what's going on here - after copying libsteam_api.so from Half-Life:

$ BOX86_LD_LIBRARY_PATH=./x86 ~/src/i386chroot/usr/src/box86/build/box86 Jamestown-x86 
BOX86_LD_LIBRARY_PATH: ./x86/
Using default BOX86_PATH: ./:bin/
Counted 56 Env var
Looking for Jamestown-x86
Using native(wrapped) libGL.so.1
Using native(wrapped) libopenal.so.1
Using emulated ./x86/libsteam_api.so
Using native(wrapped) libm.so.6
Using native(wrapped) libdl.so.2
Using emulated ./x86/libstdc++.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using emulated /lib/i386-linux-gnu/libgcc_s.so.1
Error initializing native libSDL-1.2.so.0 (last dlerror is libSDL-1.2.so.0: cannot open shared object file: No such file or directory)
Error loading needed lib: "libSDL-1.2.so.0"
Error: loading needed libs in elf ./Jamestown-x86
voltagex@usbuntu:~/games/jamestown$ file x86/lib
libopenal.so.1   libSDL-1.2.so.0  libstdc++.so.6   libsteam_api.so  
voltagex@usbuntu:~/games/jamestown$ file x86/libSDL-1.2.so.0 
x86/libSDL-1.2.so.0: ELF 32-bit LSB pie executable, Intel 80386, version 1 (SYSV), dynamically linked, not stripped
voltagex@usbuntu:~/games/jamestown$ ldd x86/libSDL-1.2.so.0 
        linux-gate.so.1 (0xf7f8a000)
        libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7dcf000)
        libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf7dc9000)
        libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7da9000)
        libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7bc9000)
        /lib/ld-linux.so.2 (0xf7f8b000)

Is it possible to install Spotify?

Hi to all, I know that it's not a technical "issue", but I would be grateful to know if there is a way to install Spotify with Box86, because it is only available from repository on Linux...

Thanks in advance

Any API/library build?

I merged box86 with dll loader from mplayer (used in xash3d), so it loads dll and runs all code in emulator (but only in single-thread mode).
Now i managed to load hl.dll and it runs game logics almost correctly (still need to fix some variadics and callbacks), stdcall works by using retn in bridges.
But i do not need launcher and linux-glibc wrappers to be linked in. Wrappers are unuseful for game code, it only needs libc/libgcc/libstdc++ and almost unuseful on non-glibc hosts.
May be dynarec+emulator+bridge code splitted into separate library?

The Witcher 2: Fails to boot, Missing sdl symbols.

Theres quite a few missing symbols, a few of them being sdl.

Error: Symbol alcCreateContext not found, cannot apply R_386_32 @0xb5b73e84 ((nil))
Error: Symbol alcMakeContextCurrent not found, cannot apply R_386_32 @0xb5b73e8c ((nil))
Error: Symbol alcProcessContext not found, cannot apply R_386_32 @0xb5b73e94 ((nil))
Error: Symbol alcSuspendContext not found, cannot apply R_386_32 @0xb5b73e9c ((nil))
Error: Symbol alcDestroyContext not found, cannot apply R_386_32 @0xb5b73ea4 ((nil))
Error: Symbol alcGetCurrentContext not found, cannot apply R_386_32 @0xb5b73eac ((nil))
Error: Symbol alcGetContextsDevice not found, cannot apply R_386_32 @0xb5b73eb4 ((nil))
Error: Symbol alcOpenDevice not found, cannot apply R_386_32 @0xb5b73ebc ((nil))
Error: Symbol alcCloseDevice not found, cannot apply R_386_32 @0xb5b73ec4 ((nil))
Error: Symbol alcGetError not found, cannot apply R_386_32 @0xb5b73ecc ((nil))
Error: Symbol alcIsExtensionPresent not found, cannot apply R_386_32 @0xb5b73ed4 ((nil))
Error: Symbol alcGetProcAddress not found, cannot apply R_386_32 @0xb5b73edc ((nil))
Error: Symbol alcGetEnumValue not found, cannot apply R_386_32 @0xb5b73ee4 ((nil))
Error: Symbol alcGetString not found, cannot apply R_386_32 @0xb5b73eec ((nil))
Error: Symbol alcGetIntegerv not found, cannot apply R_386_32 @0xb5b73ef4 ((nil))
Error: Symbol alcCaptureOpenDevice not found, cannot apply R_386_32 @0xb5b73efc ((nil))
Error: Symbol alcCaptureCloseDevice not found, cannot apply R_386_32 @0xb5b73f04 ((nil))
Error: Symbol alcCaptureStart not found, cannot apply R_386_32 @0xb5b73f0c ((nil))
Error: Symbol alcCaptureStop not found, cannot apply R_386_32 @0xb5b73f14 ((nil))
Error: Symbol alcCaptureSamples not found, cannot apply R_386_32 @0xb5b73f1c ((nil))
Error: Symbol alcSetThreadContext not found, cannot apply R_386_32 @0xb5b73f24 ((nil))
Error: Symbol alcGetThreadContext not found, cannot apply R_386_32 @0xb5b73f2c ((nil))
Error: Symbol alcLoopbackOpenDeviceSOFT not found, cannot apply R_386_32 @0xb5b73f34 ((nil))
Error: Symbol alcIsRenderFormatSupportedSOFT not found, cannot apply R_386_32 @0xb5b73f3c ((nil))
Error: Symbol alcRenderSamplesSOFT not found, cannot apply R_386_32 @0xb5b73f44 ((nil))
Error: Symbol alcDevicePauseSOFT not found, cannot apply R_386_32 @0xb5b73f4c ((nil))
Error: Symbol alcDeviceResumeSOFT not found, cannot apply R_386_32 @0xb5b73f54 ((nil))
Error: Symbol alcGetInteger64vSOFT not found, cannot apply R_386_32 @0xb5b73f5c ((nil))
Error: Symbol alEnable not found, cannot apply R_386_32 @0xb5b73f64 ((nil))
Error: Symbol alDisable not found, cannot apply R_386_32 @0xb5b73f6c ((nil))
Error: Symbol alIsEnabled not found, cannot apply R_386_32 @0xb5b73f74 ((nil))
Error: Symbol alGetString not found, cannot apply R_386_32 @0xb5b73f7c ((nil))
Error: Symbol alGetBooleanv not found, cannot apply R_386_32 @0xb5b73f84 ((nil))
Error: Symbol alGetIntegerv not found, cannot apply R_386_32 @0xb5b73f8c ((nil))
Error: Symbol alGetFloatv not found, cannot apply R_386_32 @0xb5b73f94 ((nil))
Error: Symbol alGetDoublev not found, cannot apply R_386_32 @0xb5b73f9c ((nil))
Error: Symbol alGetBoolean not found, cannot apply R_386_32 @0xb5b73fa4 ((nil))
Error: Symbol alGetInteger not found, cannot apply R_386_32 @0xb5b73fac ((nil))
Error: Symbol alGetFloat not found, cannot apply R_386_32 @0xb5b73fb4 ((nil))
Error: Symbol alGetDouble not found, cannot apply R_386_32 @0xb5b73fbc ((nil))
Error: Symbol alGetError not found, cannot apply R_386_32 @0xb5b73fc4 ((nil))
Error: Symbol alIsExtensionPresent not found, cannot apply R_386_32 @0xb5b73fcc ((nil))
Error: Symbol alGetProcAddress not found, cannot apply R_386_32 @0xb5b73fd4 ((nil))
Error: Symbol alGetEnumValue not found, cannot apply R_386_32 @0xb5b73fdc ((nil))
Error: Symbol alListenerf not found, cannot apply R_386_32 @0xb5b73fe4 ((nil))
Error: Symbol alListener3f not found, cannot apply R_386_32 @0xb5b73fec ((nil))
Error: Symbol alListenerfv not found, cannot apply R_386_32 @0xb5b73ff4 ((nil))
Error: Symbol alListeneri not found, cannot apply R_386_32 @0xb5b73ffc ((nil))
Error: Symbol alListener3i not found, cannot apply R_386_32 @0xb5b74004 ((nil))
Error: Symbol alListeneriv not found, cannot apply R_386_32 @0xb5b7400c ((nil))
Error: Symbol alGetListenerf not found, cannot apply R_386_32 @0xb5b74014 ((nil))
Error: Symbol alGetListener3f not found, cannot apply R_386_32 @0xb5b7401c ((nil))
Error: Symbol alGetListenerfv not found, cannot apply R_386_32 @0xb5b74024 ((nil))
Error: Symbol alGetListeneri not found, cannot apply R_386_32 @0xb5b7402c ((nil))
Error: Symbol alGetListener3i not found, cannot apply R_386_32 @0xb5b74034 ((nil))
Error: Symbol alGetListeneriv not found, cannot apply R_386_32 @0xb5b7403c ((nil))
Error: Symbol alGenSources not found, cannot apply R_386_32 @0xb5b74044 ((nil))
Error: Symbol alDeleteSources not found, cannot apply R_386_32 @0xb5b7404c ((nil))
Error: Symbol alIsSource not found, cannot apply R_386_32 @0xb5b74054 ((nil))
Error: Symbol alSourcef not found, cannot apply R_386_32 @0xb5b7405c ((nil))
Error: Symbol alSource3f not found, cannot apply R_386_32 @0xb5b74064 ((nil))
Error: Symbol alSourcefv not found, cannot apply R_386_32 @0xb5b7406c ((nil))
Error: Symbol alSourcei not found, cannot apply R_386_32 @0xb5b74074 ((nil))
Error: Symbol alSource3i not found, cannot apply R_386_32 @0xb5b7407c ((nil))
Error: Symbol alSourceiv not found, cannot apply R_386_32 @0xb5b74084 ((nil))
Error: Symbol alGetSourcef not found, cannot apply R_386_32 @0xb5b7408c ((nil))
Error: Symbol alGetSource3f not found, cannot apply R_386_32 @0xb5b74094 ((nil))
Error: Symbol alGetSourcefv not found, cannot apply R_386_32 @0xb5b7409c ((nil))
Error: Symbol alGetSourcei not found, cannot apply R_386_32 @0xb5b740a4 ((nil))
Error: Symbol alGetSource3i not found, cannot apply R_386_32 @0xb5b740ac ((nil))
Error: Symbol alGetSourceiv not found, cannot apply R_386_32 @0xb5b740b4 ((nil))
Error: Symbol alSourcePlayv not found, cannot apply R_386_32 @0xb5b740bc ((nil))
Error: Symbol alSourceStopv not found, cannot apply R_386_32 @0xb5b740c4 ((nil))
Error: Symbol alSourceRewindv not found, cannot apply R_386_32 @0xb5b740cc ((nil))
Error: Symbol alSourcePausev not found, cannot apply R_386_32 @0xb5b740d4 ((nil))
Error: Symbol alSourcePlay not found, cannot apply R_386_32 @0xb5b740dc ((nil))
Error: Symbol alSourceStop not found, cannot apply R_386_32 @0xb5b740e4 ((nil))
Error: Symbol alSourceRewind not found, cannot apply R_386_32 @0xb5b740ec ((nil))
Error: Symbol alSourcePause not found, cannot apply R_386_32 @0xb5b740f4 ((nil))
Error: Symbol alSourceQueueBuffers not found, cannot apply R_386_32 @0xb5b740fc ((nil))
Error: Symbol alSourceUnqueueBuffers not found, cannot apply R_386_32 @0xb5b74104 ((nil))
Error: Symbol alGenBuffers not found, cannot apply R_386_32 @0xb5b7410c ((nil))
Error: Symbol alDeleteBuffers not found, cannot apply R_386_32 @0xb5b74114 ((nil))
Error: Symbol alIsBuffer not found, cannot apply R_386_32 @0xb5b7411c ((nil))
Error: Symbol alBufferData not found, cannot apply R_386_32 @0xb5b74124 ((nil))
Error: Symbol alBufferf not found, cannot apply R_386_32 @0xb5b7412c ((nil))
Error: Symbol alBuffer3f not found, cannot apply R_386_32 @0xb5b74134 ((nil))
Error: Symbol alBufferfv not found, cannot apply R_386_32 @0xb5b7413c ((nil))
Error: Symbol alBufferi not found, cannot apply R_386_32 @0xb5b74144 ((nil))
Error: Symbol alBuffer3i not found, cannot apply R_386_32 @0xb5b7414c ((nil))
Error: Symbol alBufferiv not found, cannot apply R_386_32 @0xb5b74154 ((nil))
Error: Symbol alGetBufferf not found, cannot apply R_386_32 @0xb5b7415c ((nil))
Error: Symbol alGetBuffer3f not found, cannot apply R_386_32 @0xb5b74164 ((nil))
Error: Symbol alGetBufferfv not found, cannot apply R_386_32 @0xb5b7416c ((nil))
Error: Symbol alGetBufferi not found, cannot apply R_386_32 @0xb5b74174 ((nil))
Error: Symbol alGetBuffer3i not found, cannot apply R_386_32 @0xb5b7417c ((nil))
Error: Symbol alGetBufferiv not found, cannot apply R_386_32 @0xb5b74184 ((nil))
Error: Symbol alDopplerFactor not found, cannot apply R_386_32 @0xb5b7418c ((nil))
Error: Symbol alDopplerVelocity not found, cannot apply R_386_32 @0xb5b74194 ((nil))
Error: Symbol alSpeedOfSound not found, cannot apply R_386_32 @0xb5b7419c ((nil))
Error: Symbol alDistanceModel not found, cannot apply R_386_32 @0xb5b741a4 ((nil))
Error: Symbol alGenFilters not found, cannot apply R_386_32 @0xb5b741ac ((nil))
Error: Symbol alDeleteFilters not found, cannot apply R_386_32 @0xb5b741b4 ((nil))
Error: Symbol alIsFilter not found, cannot apply R_386_32 @0xb5b741bc ((nil))
Error: Symbol alFilteri not found, cannot apply R_386_32 @0xb5b741c4 ((nil))
Error: Symbol alFilteriv not found, cannot apply R_386_32 @0xb5b741cc ((nil))
Error: Symbol alFilterf not found, cannot apply R_386_32 @0xb5b741d4 ((nil))
Error: Symbol alFilterfv not found, cannot apply R_386_32 @0xb5b741dc ((nil))
Error: Symbol alGetFilteri not found, cannot apply R_386_32 @0xb5b741e4 ((nil))
Error: Symbol alGetFilteriv not found, cannot apply R_386_32 @0xb5b741ec ((nil))
Error: Symbol alGetFilterf not found, cannot apply R_386_32 @0xb5b741f4 ((nil))
Error: Symbol alGetFilterfv not found, cannot apply R_386_32 @0xb5b741fc ((nil))
Error: Symbol alGenEffects not found, cannot apply R_386_32 @0xb5b74204 ((nil))
Error: Symbol alDeleteEffects not found, cannot apply R_386_32 @0xb5b7420c ((nil))
Error: Symbol alIsEffect not found, cannot apply R_386_32 @0xb5b74214 ((nil))
Error: Symbol alEffecti not found, cannot apply R_386_32 @0xb5b7421c ((nil))
Error: Symbol alEffectiv not found, cannot apply R_386_32 @0xb5b74224 ((nil))
Error: Symbol alEffectf not found, cannot apply R_386_32 @0xb5b7422c ((nil))
Error: Symbol alEffectfv not found, cannot apply R_386_32 @0xb5b74234 ((nil))
Error: Symbol alGetEffecti not found, cannot apply R_386_32 @0xb5b7423c ((nil))
Error: Symbol alGetEffectiv not found, cannot apply R_386_32 @0xb5b74244 ((nil))
Error: Symbol alGetEffectf not found, cannot apply R_386_32 @0xb5b7424c ((nil))
Error: Symbol alGetEffectfv not found, cannot apply R_386_32 @0xb5b74254 ((nil))
Error: Symbol alGenAuxiliaryEffectSlots not found, cannot apply R_386_32 @0xb5b7425c ((nil))
Error: Symbol alDeleteAuxiliaryEffectSlots not found, cannot apply R_386_32 @0xb5b74264 ((nil))
Error: Symbol alIsAuxiliaryEffectSlot not found, cannot apply R_386_32 @0xb5b7426c ((nil))
Error: Symbol alAuxiliaryEffectSloti not found, cannot apply R_386_32 @0xb5b74274 ((nil))
Error: Symbol alAuxiliaryEffectSlotiv not found, cannot apply R_386_32 @0xb5b7427c ((nil))
Error: Symbol alAuxiliaryEffectSlotf not found, cannot apply R_386_32 @0xb5b74284 ((nil))
Error: Symbol alAuxiliaryEffectSlotfv not found, cannot apply R_386_32 @0xb5b7428c ((nil))
Error: Symbol alGetAuxiliaryEffectSloti not found, cannot apply R_386_32 @0xb5b74294 ((nil))
Error: Symbol alGetAuxiliaryEffectSlotiv not found, cannot apply R_386_32 @0xb5b7429c ((nil))
Error: Symbol alGetAuxiliaryEffectSlotf not found, cannot apply R_386_32 @0xb5b742a4 ((nil))
Error: Symbol alGetAuxiliaryEffectSlotfv not found, cannot apply R_386_32 @0xb5b742ac ((nil))
Error: Symbol alBufferSubDataSOFT not found, cannot apply R_386_32 @0xb5b742b4 ((nil))
Error: Symbol alBufferSamplesSOFT not found, cannot apply R_386_32 @0xb5b742bc ((nil))
Error: Symbol alBufferSubSamplesSOFT not found, cannot apply R_386_32 @0xb5b742c4 ((nil))
Error: Symbol alGetBufferSamplesSOFT not found, cannot apply R_386_32 @0xb5b742cc ((nil))
Error: Symbol alIsBufferFormatSupportedSOFT not found, cannot apply R_386_32 @0xb5b742d4 ((nil))
Error: Symbol alDeferUpdatesSOFT not found, cannot apply R_386_32 @0xb5b742dc ((nil))
Error: Symbol alProcessUpdatesSOFT not found, cannot apply R_386_32 @0xb5b742e4 ((nil))
Error: Symbol alSourcedSOFT not found, cannot apply R_386_32 @0xb5b742ec ((nil))
Error: Symbol alSource3dSOFT not found, cannot apply R_386_32 @0xb5b742f4 ((nil))
Error: Symbol alSourcedvSOFT not found, cannot apply R_386_32 @0xb5b742fc ((nil))
Error: Symbol alGetSourcedSOFT not found, cannot apply R_386_32 @0xb5b74304 ((nil))
Error: Symbol alGetSource3dSOFT not found, cannot apply R_386_32 @0xb5b7430c ((nil))
Error: Symbol alGetSourcedvSOFT not found, cannot apply R_386_32 @0xb5b74314 ((nil))
Error: Symbol alSourcei64SOFT not found, cannot apply R_386_32 @0xb5b7431c ((nil))
Error: Symbol alSource3i64SOFT not found, cannot apply R_386_32 @0xb5b74324 ((nil))
Error: Symbol alSourcei64vSOFT not found, cannot apply R_386_32 @0xb5b7432c ((nil))
Error: Symbol alGetSourcei64SOFT not found, cannot apply R_386_32 @0xb5b74334 ((nil))
Error: Symbol alGetSource3i64SOFT not found, cannot apply R_386_32 @0xb5b7433c ((nil))
Error: Symbol alGetSourcei64vSOFT not found, cannot apply R_386_32 @0xb5b74344 ((nil))
Error: Symbol alGenSoundfontsSOFT not found, cannot apply R_386_32 @0xb5b7434c ((nil))
Error: Symbol alDeleteSoundfontsSOFT not found, cannot apply R_386_32 @0xb5b74354 ((nil))
Error: Symbol alIsSoundfontSOFT not found, cannot apply R_386_32 @0xb5b7435c ((nil))
Error: Symbol alGetSoundfontivSOFT not found, cannot apply R_386_32 @0xb5b74364 ((nil))
Error: Symbol alSoundfontPresetsSOFT not found, cannot apply R_386_32 @0xb5b7436c ((nil))
Error: Symbol alGenPresetsSOFT not found, cannot apply R_386_32 @0xb5b74374 ((nil))
Error: Symbol alDeletePresetsSOFT not found, cannot apply R_386_32 @0xb5b7437c ((nil))
Error: Symbol alIsPresetSOFT not found, cannot apply R_386_32 @0xb5b74384 ((nil))
Error: Symbol alPresetiSOFT not found, cannot apply R_386_32 @0xb5b7438c ((nil))
Error: Symbol alPresetivSOFT not found, cannot apply R_386_32 @0xb5b74394 ((nil))
Error: Symbol alGetPresetivSOFT not found, cannot apply R_386_32 @0xb5b7439c ((nil))
Error: Symbol alPresetFontsoundsSOFT not found, cannot apply R_386_32 @0xb5b743a4 ((nil))
Error: Symbol alGenFontsoundsSOFT not found, cannot apply R_386_32 @0xb5b743ac ((nil))
Error: Symbol alDeleteFontsoundsSOFT not found, cannot apply R_386_32 @0xb5b743b4 ((nil))
Error: Symbol alIsFontsoundSOFT not found, cannot apply R_386_32 @0xb5b743bc ((nil))
Error: Symbol alFontsoundiSOFT not found, cannot apply R_386_32 @0xb5b743c4 ((nil))
Error: Symbol alFontsound2iSOFT not found, cannot apply R_386_32 @0xb5b743cc ((nil))
Error: Symbol alFontsoundivSOFT not found, cannot apply R_386_32 @0xb5b743d4 ((nil))
Error: Symbol alGetFontsoundivSOFT not found, cannot apply R_386_32 @0xb5b743dc ((nil))
Error: Symbol alFontsoundModulatoriSOFT not found, cannot apply R_386_32 @0xb5b743e4 ((nil))
Error: Symbol alGetFontsoundModulatorivSOFT not found, cannot apply R_386_32 @0xb5b743ec ((nil))
Error: Symbol alMidiSoundfontSOFT not found, cannot apply R_386_32 @0xb5b743f4 ((nil))
Error: Symbol alMidiSoundfontvSOFT not found, cannot apply R_386_32 @0xb5b743fc ((nil))
Error: Symbol alMidiEventSOFT not found, cannot apply R_386_32 @0xb5b74404 ((nil))
Error: Symbol alMidiSysExSOFT not found, cannot apply R_386_32 @0xb5b7440c ((nil))
Error: Symbol alMidiPlaySOFT not found, cannot apply R_386_32 @0xb5b74414 ((nil))
Error: Symbol alMidiPauseSOFT not found, cannot apply R_386_32 @0xb5b7441c ((nil))
Error: Symbol alMidiStopSOFT not found, cannot apply R_386_32 @0xb5b74424 ((nil))
Error: Symbol alMidiResetSOFT not found, cannot apply R_386_32 @0xb5b7442c ((nil))
Error: Symbol alMidiGainSOFT not found, cannot apply R_386_32 @0xb5b74434 ((nil))
Error: Symbol alGetInteger64SOFT not found, cannot apply R_386_32 @0xb5b7443c ((nil))
Error: Symbol alGetInteger64vSOFT not found, cannot apply R_386_32 @0xb5b74444 ((nil))
Error: Symbol alLoadSoundfontSOFT not found, cannot apply R_386_32 @0xb5b7444c ((nil))
Warning: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb5ac8198 (0x6b676)
Warning: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb5ac8474 (0x6c1e6)
Error: Symbol alDeleteBuffers not found, cannot apply R_386_JMP_SLOT @0x203732a8 (0x20007066)
Error: Symbol alcMakeContextCurrent not found, cannot apply R_386_JMP_SLOT @0x203732ac (0x20007076)
Error: Symbol alGenSources not found, cannot apply R_386_JMP_SLOT @0x203732d8 (0x20007126)
Error: Symbol alDistanceModel not found, cannot apply R_386_JMP_SLOT @0x2037331c (0x20007236)
Error: Symbol alcCaptureCloseDevice not found, cannot apply R_386_JMP_SLOT @0x20373334 (0x20007296)
Error: Symbol alSourceRewind not found, cannot apply R_386_JMP_SLOT @0x20373368 (0x20007366)
Error: Symbol alSourceQueueBuffers not found, cannot apply R_386_JMP_SLOT @0x20373398 (0x20007426)
Error: Symbol alProcessUpdatesSOFT not found, cannot apply R_386_JMP_SLOT @0x203733e8 (0x20007566)
Error: Symbol SDL_PeepEvents not found, cannot apply R_386_JMP_SLOT @0x20373420 (0x20007646)
Error: Symbol alcCaptureStart not found, cannot apply R_386_JMP_SLOT @0x20373428 (0x20007666)
Error: Symbol alDeferUpdatesSOFT not found, cannot apply R_386_JMP_SLOT @0x20373444 (0x200076d6)
Error: Symbol alcOpenDevice not found, cannot apply R_386_JMP_SLOT @0x20373478 (0x200077a6)
Error: Symbol alcCaptureSamples not found, cannot apply R_386_JMP_SLOT @0x20373488 (0x200077e6)
Error: Symbol tempnam not found, cannot apply R_386_JMP_SLOT @0x203734a4 (0x20007856)
Error: Symbol alSourcei not found, cannot apply R_386_JMP_SLOT @0x203734dc (0x20007936)
Error: Symbol SDL_SetWindowMaximumSize not found, cannot apply R_386_JMP_SLOT @0x20373514 (0x20007a16)
Error: Symbol SDL_GetWindowMaximumSize not found, cannot apply R_386_JMP_SLOT @0x2037352c (0x20007a76)
Error: Symbol alDopplerFactor not found, cannot apply R_386_JMP_SLOT @0x20373548 (0x20007ae6)
Error: Symbol alGetSourcei not found, cannot apply R_386_JMP_SLOT @0x20373558 (0x20007b26)
Error: Symbol SDL_GetWindowFromID not found, cannot apply R_386_JMP_SLOT @0x203735ac (0x20007c76)
Error: Symbol alDeleteSources not found, cannot apply R_386_JMP_SLOT @0x203735e0 (0x20007d46)
Error: Symbol alSource3f not found, cannot apply R_386_JMP_SLOT @0x203735f0 (0x20007d86)
Error: Symbol alSourceUnqueueBuffers not found, cannot apply R_386_JMP_SLOT @0x20373630 (0x20007e86)
Error: Symbol alcDestroyContext not found, cannot apply R_386_JMP_SLOT @0x20373650 (0x20007f06)
Error: Symbol alSourcePlay not found, cannot apply R_386_JMP_SLOT @0x20373678 (0x20007fa6)
Error: Symbol alListenerfv not found, cannot apply R_386_JMP_SLOT @0x2037368c (0x20007ff6)
Error: Symbol alcCaptureStop not found, cannot apply R_386_JMP_SLOT @0x203736c4 (0x200080d6)
Error: Symbol alcGetIntegerv not found, cannot apply R_386_JMP_SLOT @0x203736cc (0x200080f6)
Error: Symbol SDL_GetWindowGammaRamp not found, cannot apply R_386_JMP_SLOT @0x203736f0 (0x20008186)
Error: Symbol alcCreateContext not found, cannot apply R_386_JMP_SLOT @0x20373704 (0x200081d6)
Error: Symbol alBufferData not found, cannot apply R_386_JMP_SLOT @0x2037370c (0x200081f6)
Error: Symbol alGenBuffers not found, cannot apply R_386_JMP_SLOT @0x2037374c (0x200082f6)
Error: Symbol alSourcef not found, cannot apply R_386_JMP_SLOT @0x203737bc (0x200084b6)
Error: Symbol alcCloseDevice not found, cannot apply R_386_JMP_SLOT @0x20373860 (0x20008746)
Error: Symbol alcCaptureOpenDevice not found, cannot apply R_386_JMP_SLOT @0x20373870 (0x20008786)
Error: Symbol SDL_SetWindowData not found, cannot apply R_386_JMP_SLOT @0x203738b4 (0x20008896)
Error: Symbol alBufferSubDataSOFT not found, cannot apply R_386_JMP_SLOT @0x203738d0 (0x20008906)
Error: Symbol SDL_SetWindowGammaRamp not found, cannot apply R_386_JMP_SLOT @0x203738f0 (0x20008986)
Error: Symbol SDL_GetMouseFocus not found, cannot apply R_386_JMP_SLOT @0x2037390c (0x200089f6)
Error: Symbol alGetSourceiv not found, cannot apply R_386_JMP_SLOT @0x20373924 (0x20008a56)
Error: Symbol SDL_GetWindowData not found, cannot apply R_386_JMP_SLOT @0x20373990 (0x20008c06)
Error: Symbol alSourcefv not found, cannot apply R_386_JMP_SLOT @0x20373a2c (0x20008e76)
Error: Symbol SDL_GetDefaultCursor not found, cannot apply R_386_JMP_SLOT @0x20373a38 (0x20008ea6)
Error: Symbol alSourcePause not found, cannot apply R_386_JMP_SLOT @0x20373a5c (0x20008f36)
Error: Symbol alSourceStop not found, cannot apply R_386_JMP_SLOT @0x20373a6c (0x20008f76)
Error: Symbol alListenerf not found, cannot apply R_386_JMP_SLOT @0x20373a7c (0x20008fb6)
PltResolver: Ofs=0x20016cb2, Id=1032 (IP=(nil))

I don't expect this game to run at a fps higher than 1, but thought it would be impressive to have it working regardless ;)

Baba is you: fails to boot, lots of missing symbols

Heres the full output from running box86.

BOX86_LD_LIBRARY_PATH=.:lib:lib/lib:x86:lib32:/usr/i686-linux-gnu/lib:/usr/lib/arm-linux-gnueabihf box86 Chowdren 
BOX86_LD_LIBRARY_PATH: ./:lib/:lib/lib/:x86/:lib32/:/usr/i686-linux-gnu/lib/:/usr/lib/arm-linux-gnueabihf/
Using default BOX86_PATH: ./:bin/
Counted 45 Env var
Looking for Chowdren
Using native(wrapped) libGL.so.1
Using native(wrapped) libdl.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) librt.so.1
Using native(wrapped) libX11.so.6
Using native(wrapped) libXext.so.6
Using native(wrapped) libXcursor.so.1
Using native(wrapped) libXinerama.so.1
Using native(wrapped) libXi.so.6
Using native(wrapped) libXrandr.so.2
Using native(wrapped) libXss.so.1
Using native(wrapped) libXxf86vm.so.1
SDL could not be initialized: No available video device
Opening audio device
Using emulated /usr/i686-linux-gnu/lib/libpulse-simple.so.0
Using emulated /usr/i686-linux-gnu/lib/libpulse.so.0
Using emulated /usr/i686-linux-gnu/lib/libpulsecommon-12.2.so
Using native(wrapped) libX11-xcb.so.1
Using native(wrapped) libxcb.so.1
Using emulated /usr/i686-linux-gnu/lib/libICE.so.6
Using emulated /usr/i686-linux-gnu/lib/libbsd.so.0
Using emulated /usr/i686-linux-gnu/lib/libSM.so.6
Using native(wrapped) libuuid.so.1
Using emulated /usr/i686-linux-gnu/lib/libXtst.so.6
Using emulated /usr/i686-linux-gnu/lib/libsystemd.so.0
Using emulated /usr/i686-linux-gnu/lib/liblzma.so.5
Using emulated /usr/i686-linux-gnu/lib/liblz4.so.1
Using emulated /usr/i686-linux-gnu/lib/libgcrypt.so.20
Using emulated /usr/i686-linux-gnu/lib/libgpg-error.so.0
Using emulated /usr/i686-linux-gnu/lib/libwrap.so.0
Using emulated /usr/i686-linux-gnu/lib/libnsl.so.1
Using emulated /usr/i686-linux-gnu/lib/libsndfile.so.1
Using emulated /usr/i686-linux-gnu/lib/libFLAC.so.8
Using native(wrapped) libogg.so.0
Using native(wrapped) libvorbis.so.0
Using emulated /usr/i686-linux-gnu/lib/libvorbisenc.so.2
Using emulated /usr/i686-linux-gnu/lib/libasyncns.so.0
Using native(wrapped) libresolv.so.2
Using native(wrapped) libdbus-1.so.3
Using emulated /usr/i686-linux-gnu/lib/libcap.so.2
Error: Symbol warnx not found, cannot apply R_386_JMP_SLOT @0xb64b3ef0 (0x34b6)
Error: Symbol fopencookie not found, cannot apply R_386_JMP_SLOT @0xb64b3f28 (0x3596)
Error: Symbol vwarn not found, cannot apply R_386_JMP_SLOT @0xb64b3f2c (0x35a6)
Error: Symbol __explicit_bzero_chk not found, cannot apply R_386_JMP_SLOT @0xb64b3f5c (0x3666)
Error: Symbol _XDeqAsyncHandler not found, cannot apply R_386_JMP_SLOT @0xb6eb3034 (0xe06)
Error: Symbol _XGetAsyncData not found, cannot apply R_386_JMP_SLOT @0xb6eb3054 (0xe86)
Error: Symbol memfd_create not found, cannot apply R_386_JMP_SLOT @0xb6466a08 (0xb1c6)
Error: Symbol __ppoll_chk not found, cannot apply R_386_JMP_SLOT @0xb6466a2c (0xb256)
Error: Symbol mq_getattr not found, cannot apply R_386_JMP_SLOT @0xb6466a78 (0xb386)
Error: Symbol setns not found, cannot apply R_386_JMP_SLOT @0xb6466b40 (0xb6a6)
Error: Symbol signalfd not found, cannot apply R_386_JMP_SLOT @0xb6466ba0 (0xb826)
Error: Symbol sigisemptyset not found, cannot apply R_386_JMP_SLOT @0xb6466bfc (0xb996)
Error: Symbol timerfd_create not found, cannot apply R_386_JMP_SLOT @0xb6466c64 (0xbb36)
Error: Symbol parse_printf_format not found, cannot apply R_386_JMP_SLOT @0xb6466cfc (0xbd96)
Error: Symbol mempcpy not found, cannot apply R_386_JMP_SLOT @0xb6466de8 (0xc146)
Error: Symbol open_memstream not found, cannot apply R_386_JMP_SLOT @0xb6466e68 (0xc346)
Error: Symbol timerfd_settime not found, cannot apply R_386_JMP_SLOT @0xb6466e94 (0xc3f6)
Warning, don't know of to handle rel #2 type: R_386_TLS_TPOFF (0xb6265fc8)
Error: Global Symbol xdr_u_int not found, cannot apply R_386_GLOB_DAT @0xb6265fd4 ((nil))
Error: Global Symbol xdr_void not found, cannot apply R_386_GLOB_DAT @0xb6265fe4 ((nil))
Error: Global Symbol xdr_bool not found, cannot apply R_386_GLOB_DAT @0xb6265fe8 ((nil))
Error: Global Symbol _libc_intl_domainname not found, cannot apply R_386_GLOB_DAT @0xb6265fec ((nil))
Error: Global Symbol __pthread_once not found, cannot apply R_386_GLOB_DAT @0xb6265ff0 ((nil))
Error: Global Symbol xdr_netobj not found, cannot apply R_386_GLOB_DAT @0xb6265ff8 ((nil))
Error: Symbol xdr_string not found, cannot apply R_386_JMP_SLOT @0xb626600c (0x3046)
Error: Symbol clnt_pcreateerror not found, cannot apply R_386_JMP_SLOT @0xb6266018 (0x3076)
Error: Symbol svc_register not found, cannot apply R_386_JMP_SLOT @0xb6266020 (0x3096)
Error: Symbol svcudp_bufcreate not found, cannot apply R_386_JMP_SLOT @0xb6266030 (0x30d6)
Error: Symbol __asprintf not found, cannot apply R_386_JMP_SLOT @0xb6266038 (0x30f6)
Error: Symbol key_gendes not found, cannot apply R_386_JMP_SLOT @0xb6266060 (0x3196)
Error: Symbol xdr_pointer not found, cannot apply R_386_JMP_SLOT @0xb6266068 (0x31b6)
Error: Symbol xprt_unregister not found, cannot apply R_386_JMP_SLOT @0xb6266070 (0x31d6)
Error: Symbol svctcp_create not found, cannot apply R_386_JMP_SLOT @0xb6266078 (0x31f6)
Error: Symbol xdrmem_create not found, cannot apply R_386_JMP_SLOT @0xb6266080 (0x3216)
Error: Symbol xdr_enum not found, cannot apply R_386_JMP_SLOT @0xb6266088 (0x3236)
Error: Symbol xdr_sizeof not found, cannot apply R_386_JMP_SLOT @0xb62660ac (0x32c6)
Error: Symbol __libc_clntudp_bufcreate not found, cannot apply R_386_JMP_SLOT @0xb62660b4 (0x32e6)
Error: Symbol xdr_u_char not found, cannot apply R_386_JMP_SLOT @0xb62660c4 (0x3326)
Error: Symbol xdr_free not found, cannot apply R_386_JMP_SLOT @0xb62660cc (0x3346)
Error: Symbol authdes_pk_create not found, cannot apply R_386_JMP_SLOT @0xb62660d4 (0x3366)
Error: Symbol xdr_array not found, cannot apply R_386_JMP_SLOT @0xb62660d8 (0x3376)
Error: Symbol __libc_rpc_getport not found, cannot apply R_386_JMP_SLOT @0xb62660e0 (0x3396)
Error: Symbol xdr_uint32_t not found, cannot apply R_386_JMP_SLOT @0xb62660e4 (0x33a6)
Error: Symbol authdes_create not found, cannot apply R_386_JMP_SLOT @0xb62660f4 (0x33e6)
Error: Symbol key_secretkey_is_set not found, cannot apply R_386_JMP_SLOT @0xb62660f8 (0x33f6)
Error: Symbol asprintf not found, cannot apply R_386_JMP_SLOT @0xb62660fc (0x3406)
Error: Symbol svc_sendreply not found, cannot apply R_386_JMP_SLOT @0xb6266104 (0x3426)
Error: Symbol __mempcpy not found, cannot apply R_386_JMP_SLOT @0xb6266108 (0x3436)
Error: Symbol clntudp_create not found, cannot apply R_386_JMP_SLOT @0xb626610c (0x3446)
Error: Symbol clnt_perror not found, cannot apply R_386_JMP_SLOT @0xb6266110 (0x3456)
Error: Symbol authunix_create_default not found, cannot apply R_386_JMP_SLOT @0xb6266114 (0x3466)
Error: Symbol __nss_hash not found, cannot apply R_386_JMP_SLOT @0xb6266118 (0x3476)
Error: Symbol clnt_create not found, cannot apply R_386_JMP_SLOT @0xb6266120 (0x3496)
Error: Symbol __rpc_thread_svc_max_pollfd not found, cannot apply R_386_JMP_SLOT @0xb6266128 (0x34b6)
Error: Symbol host2netname not found, cannot apply R_386_JMP_SLOT @0xb626612c (0x34c6)
Error: Symbol xdr_opaque not found, cannot apply R_386_JMP_SLOT @0xb6266130 (0x34d6)
Error: Symbol svcerr_systemerr not found, cannot apply R_386_JMP_SLOT @0xb626613c (0x3506)
Error: Symbol rawmemchr not found, cannot apply R_386_JMP_SLOT @0xb6266140 (0x3516)
Error: Symbol xdr_int not found, cannot apply R_386_JMP_SLOT @0xb6266148 (0x3536)
Error: Symbol svcerr_noproc not found, cannot apply R_386_JMP_SLOT @0xb626614c (0x3546)
Error: Symbol get_myaddress not found, cannot apply R_386_JMP_SLOT @0xb6266154 (0x3566)
Error: Symbol svcerr_decode not found, cannot apply R_386_JMP_SLOT @0xb6266158 (0x3576)
Error: Symbol xdrstdio_create not found, cannot apply R_386_JMP_SLOT @0xb626615c (0x3586)
Error: Symbol __rpc_thread_svc_pollfd not found, cannot apply R_386_JMP_SLOT @0xb6266168 (0x35b6)
Error: Symbol __stpcpy not found, cannot apply R_386_JMP_SLOT @0xb6266170 (0x35d6)
Error: Symbol clnttcp_create not found, cannot apply R_386_JMP_SLOT @0xb6266178 (0x35f6)
Error: Symbol xdr_bytes not found, cannot apply R_386_JMP_SLOT @0xb6266180 (0x3616)
Error: Symbol svc_getreq_poll not found, cannot apply R_386_JMP_SLOT @0xb626618c (0x3646)
Error: Symbol innetgr not found, cannot apply R_386_JMP_SLOT @0xb6494f28 (0x2496)
Error: Symbol capset not found, cannot apply R_386_JMP_SLOT @0xb615af88 (0x10a6)
Error: Symbol capget not found, cannot apply R_386_JMP_SLOT @0xb615af90 (0x10c6)
Error: Symbol asprintf not found, cannot apply R_386_JMP_SLOT @0xb615afa8 (0x1126)
Error: Global Symbol g_get_application_name not found, cannot apply R_386_GLOB_DAT @0xb6573fbc ((nil))
Error: Global Symbol gtk_window_get_default_icon_name not found, cannot apply R_386_GLOB_DAT @0xb6573fcc ((nil))
Error: Global Symbol in6addr_loopback not found, cannot apply R_386_GLOB_DAT @0xb6573fd8 ((nil))
Error: Global Symbol gdk_display not found, cannot apply R_386_GLOB_DAT @0xb6573ff8 ((nil))
Error: Global Symbol main not found, cannot apply R_386_GLOB_DAT @0xb6573ffc ((nil))
Error: Symbol dbus_free not found, cannot apply R_386_JMP_SLOT @0xb657346c (0xe2e6)
Error: Symbol xcb_connection_has_error not found, cannot apply R_386_JMP_SLOT @0xb6573470 (0xe2f6)
Error: Symbol dbus_message_iter_get_fixed_array not found, cannot apply R_386_JMP_SLOT @0xb65734a0 (0xe3b6)
Error: Symbol dbus_message_iter_recurse not found, cannot apply R_386_JMP_SLOT @0xb65734d0 (0xe476)
Error: Symbol dbus_message_iter_append_fixed_array not found, cannot apply R_386_JMP_SLOT @0xb65734e4 (0xe4c6)
Error: Symbol xcb_intern_atom not found, cannot apply R_386_JMP_SLOT @0xb6573564 (0xe6c6)
Error: Symbol dbus_watch_get_flags not found, cannot apply R_386_JMP_SLOT @0xb657361c (0xe9a6)
Error: Symbol dbus_message_iter_get_signature not found, cannot apply R_386_JMP_SLOT @0xb6573664 (0xeac6)
Error: Symbol dbus_message_iter_append_basic not found, cannot apply R_386_JMP_SLOT @0xb657367c (0xeb26)
Error: Symbol dbus_connection_send not found, cannot apply R_386_JMP_SLOT @0xb65736f8 (0xed16)
Error: Symbol xcb_connect not found, cannot apply R_386_JMP_SLOT @0xb6573754 (0xee86)
Error: Symbol xcb_setup_roots_iterator not found, cannot apply R_386_JMP_SLOT @0xb65737bc (0xf026)
Error: Symbol xcb_get_property not found, cannot apply R_386_JMP_SLOT @0xb65737f0 (0xf0f6)
Error: Symbol dbus_message_append_args not found, cannot apply R_386_JMP_SLOT @0xb65737f4 (0xf106)
Error: Symbol dbus_connection_set_wakeup_main_function not found, cannot apply R_386_JMP_SLOT @0xb6573804 (0xf146)
Error: Symbol gethostid not found, cannot apply R_386_JMP_SLOT @0xb6573830 (0xf1f6)
Error: Symbol dbus_connection_set_watch_functions not found, cannot apply R_386_JMP_SLOT @0xb6573834 (0xf206)
Error: Symbol dbus_pending_call_unref not found, cannot apply R_386_JMP_SLOT @0xb6573840 (0xf236)
Error: Symbol dbus_message_new_error not found, cannot apply R_386_JMP_SLOT @0xb6573868 (0xf2d6)
Error: Symbol dbus_watch_handle not found, cannot apply R_386_JMP_SLOT @0xb6573874 (0xf306)
Error: Symbol dbus_message_new_method_call not found, cannot apply R_386_JMP_SLOT @0xb6573888 (0xf356)
Error: Symbol xcb_get_setup not found, cannot apply R_386_JMP_SLOT @0xb65738bc (0xf426)
Error: Symbol dbus_watch_set_data not found, cannot apply R_386_JMP_SLOT @0xb65738f0 (0xf4f6)
Error: Symbol dbus_watch_get_unix_fd not found, cannot apply R_386_JMP_SLOT @0xb65738fc (0xf526)
Error: Symbol memfd_create not found, cannot apply R_386_JMP_SLOT @0xb657390c (0xf566)
Error: Symbol llrint not found, cannot apply R_386_JMP_SLOT @0xb6573920 (0xf5b6)
Error: Symbol dbus_message_iter_next not found, cannot apply R_386_JMP_SLOT @0xb6573928 (0xf5d6)
Error: Symbol dbus_message_unref not found, cannot apply R_386_JMP_SLOT @0xb6573930 (0xf5f6)
Error: Symbol dbus_connection_set_dispatch_status_function not found, cannot apply R_386_JMP_SLOT @0xb65739b8 (0xf816)
Error: Symbol dbus_connection_read_write_dispatch not found, cannot apply R_386_JMP_SLOT @0xb65739d8 (0xf896)
Error: Symbol dbus_message_iter_open_container not found, cannot apply R_386_JMP_SLOT @0xb65739fc (0xf926)
Error: Symbol xcb_intern_atom_reply not found, cannot apply R_386_JMP_SLOT @0xb6573a00 (0xf936)
Error: Symbol dbus_connection_send_with_reply_and_block not found, cannot apply R_386_JMP_SLOT @0xb6573a08 (0xf956)
Error: Symbol xcb_get_property_value not found, cannot apply R_386_JMP_SLOT @0xb6573a60 (0xfab6)
Error: Symbol dbus_watch_get_data not found, cannot apply R_386_JMP_SLOT @0xb6573acc (0xfc66)
Error: Symbol posix_madvise not found, cannot apply R_386_JMP_SLOT @0xb6573b20 (0xfdb6)
Error: Symbol xcb_get_property_reply not found, cannot apply R_386_JMP_SLOT @0xb6573b64 (0xfec6)
Error: Symbol dbus_message_new_method_return not found, cannot apply R_386_JMP_SLOT @0xb6573bb8 (0x10016)
Error: Symbol dbus_message_iter_close_container not found, cannot apply R_386_JMP_SLOT @0xb6573be0 (0x100b6)
Error: Symbol dbus_error_init not found, cannot apply R_386_JMP_SLOT @0xb6573be4 (0x100c6)
Error: Symbol dbus_type_is_basic not found, cannot apply R_386_JMP_SLOT @0xb6573c14 (0x10186)
Error: Symbol dbus_message_iter_get_arg_type not found, cannot apply R_386_JMP_SLOT @0xb6573c4c (0x10266)
Error: Symbol dbus_pending_call_cancel not found, cannot apply R_386_JMP_SLOT @0xb6573ce0 (0x104b6)
Error: Symbol dbus_connection_dispatch not found, cannot apply R_386_JMP_SLOT @0xb6573d18 (0x10596)
Error: Symbol xcb_change_property not found, cannot apply R_386_JMP_SLOT @0xb6573d24 (0x105c6)
Error: Symbol dbus_watch_get_enabled not found, cannot apply R_386_JMP_SLOT @0xb6573d38 (0x10616)
Error: Symbol xcb_screen_next not found, cannot apply R_386_JMP_SLOT @0xb6573d9c (0x107a6)
Error: Symbol xcb_disconnect not found, cannot apply R_386_JMP_SLOT @0xb6573da8 (0x107d6)
Error: Symbol personality not found, cannot apply R_386_JMP_SLOT @0xb6573db0 (0x107f6)
Error: Symbol dbus_error_is_set not found, cannot apply R_386_JMP_SLOT @0xb6573df0 (0x108f6)
Error: Symbol dbus_message_get_type not found, cannot apply R_386_JMP_SLOT @0xb6573e04 (0x10946)
Error: Symbol xcb_get_property_value_length not found, cannot apply R_386_JMP_SLOT @0xb6573e08 (0x10956)
Error: Symbol dbus_message_get_signature not found, cannot apply R_386_JMP_SLOT @0xb6573e0c (0x10966)
Error: Symbol dbus_error_free not found, cannot apply R_386_JMP_SLOT @0xb6573e20 (0x109b6)
Error: Symbol dbus_connection_ref not found, cannot apply R_386_JMP_SLOT @0xb6573e24 (0x109c6)
Error: Symbol dbus_set_error_from_message not found, cannot apply R_386_JMP_SLOT @0xb6573e80 (0x10b36)
Error: Symbol dbus_connection_get_server_id not found, cannot apply R_386_JMP_SLOT @0xb6573eb0 (0x10bf6)
Error: Symbol dbus_message_get_args not found, cannot apply R_386_JMP_SLOT @0xb6573f30 (0x10df6)
Error: Symbol pa_stream_connect_playback not found, cannot apply R_386_JMP_SLOT @0xb6ef8f40 (0x1056)
Error: Symbol pa_stream_get_sample_spec not found, cannot apply R_386_JMP_SLOT @0xb6ef8f44 (0x1066)
Error: Symbol pa_stream_set_latency_update_callback not found, cannot apply R_386_JMP_SLOT @0xb6ef8f48 (0x1076)
Error: Symbol pa_threaded_mainloop_stop not found, cannot apply R_386_JMP_SLOT @0xb6ef8f4c (0x1086)
Error: Symbol pa_operation_get_state not found, cannot apply R_386_JMP_SLOT @0xb6ef8f54 (0x10a6)
Error: Symbol pa_stream_write not found, cannot apply R_386_JMP_SLOT @0xb6ef8f58 (0x10b6)
Error: Symbol pa_context_connect not found, cannot apply R_386_JMP_SLOT @0xb6ef8f5c (0x10c6)
Error: Symbol pa_context_disconnect not found, cannot apply R_386_JMP_SLOT @0xb6ef8f60 (0x10d6)
Error: Symbol pa_context_get_state not found, cannot apply R_386_JMP_SLOT @0xb6ef8f64 (0x10e6)
Error: Symbol pa_threaded_mainloop_get_api not found, cannot apply R_386_JMP_SLOT @0xb6ef8f6c (0x1106)
Error: Symbol pa_threaded_mainloop_free not found, cannot apply R_386_JMP_SLOT @0xb6ef8f70 (0x1116)
Error: Symbol pa_stream_set_write_callback not found, cannot apply R_386_JMP_SLOT @0xb6ef8f74 (0x1126)
Error: Symbol pa_threaded_mainloop_signal not found, cannot apply R_386_JMP_SLOT @0xb6ef8f78 (0x1136)
Error: Symbol pa_context_unref not found, cannot apply R_386_JMP_SLOT @0xb6ef8f7c (0x1146)
Error: Symbol pa_context_errno not found, cannot apply R_386_JMP_SLOT @0xb6ef8f80 (0x1156)
Error: Symbol pa_threaded_mainloop_unlock not found, cannot apply R_386_JMP_SLOT @0xb6ef8f84 (0x1166)
Error: Symbol pa_stream_unref not found, cannot apply R_386_JMP_SLOT @0xb6ef8f88 (0x1176)
Error: Symbol pa_stream_get_state not found, cannot apply R_386_JMP_SLOT @0xb6ef8f8c (0x1186)
Error: Symbol pa_stream_new not found, cannot apply R_386_JMP_SLOT @0xb6ef8f94 (0x11a6)
Error: Symbol pa_context_new not found, cannot apply R_386_JMP_SLOT @0xb6ef8f98 (0x11b6)
Error: Symbol pa_threaded_mainloop_new not found, cannot apply R_386_JMP_SLOT @0xb6ef8fa0 (0x11d6)
Error: Symbol pa_threaded_mainloop_lock not found, cannot apply R_386_JMP_SLOT @0xb6ef8fa4 (0x11e6)
Error: Symbol pa_stream_set_state_callback not found, cannot apply R_386_JMP_SLOT @0xb6ef8fa8 (0x11f6)
Error: Symbol pa_operation_unref not found, cannot apply R_386_JMP_SLOT @0xb6ef8fb0 (0x1216)
Error: Symbol pa_operation_cancel not found, cannot apply R_386_JMP_SLOT @0xb6ef8fb4 (0x1226)
Error: Symbol pa_threaded_mainloop_wait not found, cannot apply R_386_JMP_SLOT @0xb6ef8fbc (0x1246)
Error: Symbol pa_threaded_mainloop_start not found, cannot apply R_386_JMP_SLOT @0xb6ef8fc4 (0x1266)
Error: Symbol pa_stream_get_latency not found, cannot apply R_386_JMP_SLOT @0xb6ef8fc8 (0x1276)
Error: Symbol pa_context_set_state_callback not found, cannot apply R_386_JMP_SLOT @0xb6ef8fcc (0x1286)
Error: Symbol pa_stream_peek not found, cannot apply R_386_JMP_SLOT @0xb6ef8fd0 (0x1296)
Error: Symbol pa_stream_connect_record not found, cannot apply R_386_JMP_SLOT @0xb6ef8fd4 (0x12a6)
Error: Symbol pa_stream_drop not found, cannot apply R_386_JMP_SLOT @0xb6ef8fd8 (0x12b6)
Error: Symbol pa_stream_writable_size not found, cannot apply R_386_JMP_SLOT @0xb6ef8fdc (0x12c6)
Error: Symbol pa_stream_set_read_callback not found, cannot apply R_386_JMP_SLOT @0xb6ef8fe4 (0x12e6)
Error: Symbol pa_stream_flush not found, cannot apply R_386_JMP_SLOT @0xb6ef8fe8 (0x12f6)
Error: Symbol pa_stream_drain not found, cannot apply R_386_JMP_SLOT @0xb6ef8fec (0x1306)
Error: Symbol pa_stream_connect_playback not found, cannot apply R_386_JMP_SLOT @0xb6efef40 (0x1056)
Error: Symbol pa_stream_get_sample_spec not found, cannot apply R_386_JMP_SLOT @0xb6efef44 (0x1066)
Error: Symbol pa_stream_set_latency_update_callback not found, cannot apply R_386_JMP_SLOT @0xb6efef48 (0x1076)
Error: Symbol pa_threaded_mainloop_stop not found, cannot apply R_386_JMP_SLOT @0xb6efef4c (0x1086)
Error: Symbol pa_operation_get_state not found, cannot apply R_386_JMP_SLOT @0xb6efef54 (0x10a6)
Error: Symbol pa_stream_write not found, cannot apply R_386_JMP_SLOT @0xb6efef58 (0x10b6)
Error: Symbol pa_context_connect not found, cannot apply R_386_JMP_SLOT @0xb6efef5c (0x10c6)
Error: Symbol pa_context_disconnect not found, cannot apply R_386_JMP_SLOT @0xb6efef60 (0x10d6)
Error: Symbol pa_context_get_state not found, cannot apply R_386_JMP_SLOT @0xb6efef64 (0x10e6)
Error: Symbol pa_threaded_mainloop_get_api not found, cannot apply R_386_JMP_SLOT @0xb6efef6c (0x1106)
Error: Symbol pa_threaded_mainloop_free not found, cannot apply R_386_JMP_SLOT @0xb6efef70 (0x1116)
Error: Symbol pa_stream_set_write_callback not found, cannot apply R_386_JMP_SLOT @0xb6efef74 (0x1126)
Error: Symbol pa_threaded_mainloop_signal not found, cannot apply R_386_JMP_SLOT @0xb6efef78 (0x1136)
Error: Symbol pa_context_unref not found, cannot apply R_386_JMP_SLOT @0xb6efef7c (0x1146)
Error: Symbol pa_context_errno not found, cannot apply R_386_JMP_SLOT @0xb6efef80 (0x1156)
Error: Symbol pa_threaded_mainloop_unlock not found, cannot apply R_386_JMP_SLOT @0xb6efef84 (0x1166)
Error: Symbol pa_stream_unref not found, cannot apply R_386_JMP_SLOT @0xb6efef88 (0x1176)
Error: Symbol pa_stream_get_state not found, cannot apply R_386_JMP_SLOT @0xb6efef8c (0x1186)
Error: Symbol pa_stream_new not found, cannot apply R_386_JMP_SLOT @0xb6efef94 (0x11a6)
Error: Symbol pa_context_new not found, cannot apply R_386_JMP_SLOT @0xb6efef98 (0x11b6)
Error: Symbol pa_threaded_mainloop_new not found, cannot apply R_386_JMP_SLOT @0xb6efefa0 (0x11d6)
Error: Symbol pa_threaded_mainloop_lock not found, cannot apply R_386_JMP_SLOT @0xb6efefa4 (0x11e6)
Error: Symbol pa_stream_set_state_callback not found, cannot apply R_386_JMP_SLOT @0xb6efefa8 (0x11f6)
Error: Symbol pa_operation_unref not found, cannot apply R_386_JMP_SLOT @0xb6efefb0 (0x1216)
Error: Symbol pa_operation_cancel not found, cannot apply R_386_JMP_SLOT @0xb6efefb4 (0x1226)
Error: Symbol pa_threaded_mainloop_wait not found, cannot apply R_386_JMP_SLOT @0xb6efefbc (0x1246)
Error: Symbol pa_threaded_mainloop_start not found, cannot apply R_386_JMP_SLOT @0xb6efefc4 (0x1266)
Error: Symbol pa_stream_get_latency not found, cannot apply R_386_JMP_SLOT @0xb6efefc8 (0x1276)
Error: Symbol pa_context_set_state_callback not found, cannot apply R_386_JMP_SLOT @0xb6efefcc (0x1286)
Error: Symbol pa_stream_peek not found, cannot apply R_386_JMP_SLOT @0xb6efefd0 (0x1296)
Error: Symbol pa_stream_connect_record not found, cannot apply R_386_JMP_SLOT @0xb6efefd4 (0x12a6)
Error: Symbol pa_stream_drop not found, cannot apply R_386_JMP_SLOT @0xb6efefd8 (0x12b6)
Error: Symbol pa_stream_writable_size not found, cannot apply R_386_JMP_SLOT @0xb6efefdc (0x12c6)
Error: Symbol pa_stream_set_read_callback not found, cannot apply R_386_JMP_SLOT @0xb6efefe4 (0x12e6)
Error: Symbol pa_stream_flush not found, cannot apply R_386_JMP_SLOT @0xb6efefe8 (0x12f6)
Error: Symbol pa_stream_drain not found, cannot apply R_386_JMP_SLOT @0xb6efefec (0x1306)
Using native(wrapped) libasound.so.2
SDL_OpenAudioDevice failed: No such audio device
Defaulting to dummy device
Audio: dummy 44100 33056 2 1024
Preload audio took 0.000374079
Segmentation fault

Question about the project.

Hi Ptit.

Impressive how much advance you have made in Box86. Could I send you a private message about a using Box86 in a comercial project that requires a x86 emulator?.

Thanks!.

HumanRessourceMachine: No music

Humand ressource Machine start, but on the Intro there should be some music playing. A short burst of currupted sound can be heard, but that's all.
Other sounds play fine.
box86_43

(not sure it's related to #1 because HRM use OpenAL and FTL use Alsa. Ogg decompression is done by FTL, not sure how the music is uncompressed on HRM).

FTL: Music is not correct

While the game loads fine (but after a long time), the music is not playing correctly. Difficult to say if it's only the music or if sounds are also affected.
box86_14

Unimplemented Opcode, missing symbols

Log

BOX86_LD_LIBRARY_PATH: /home/user/Downloads/racer/:/usr/lib32/
Using default BOX86_PATH: ./:bin/
Counted 57 Env var
Looking for /home/user/Downloads/racer/racer
Using native(wrapped) libX11.so.6
Using native(wrapped) libGLU.so.1
Using native(wrapped) libGL.so.1
Using emulated /home/user/Downloads/racer/libfmodex.so
Using native(wrapped) libdl.so.2
Using native(wrapped) libpthread.so.0
Using emulated /usr/lib32/libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) librt.so.1
Using emulated /usr/lib32/libgcc_s.so.1
Using native(wrapped) libXxf86vm.so.1

0xf7b4fe64: Unimplemented Opcode D0 67 B3 F7 80 67 B3 F7
0xf7b4fe68: Unimplemented Opcode 80 67 B3 F7 01 00 00 00
0xf74011d4: Unimplemented Opcode 10 4A 2F F7 A0 4A 2F F7
0xf74011d8: Unimplemented Opcode A0 4A 2F F7 D0 4A 2F F7
0xf74011dc: Unimplemented Opcode D0 4A 2F F7 50 4B 2F F7
0xf74011e0: Unimplemented Opcode 50 4B 2F F7 60 4C 2F F7
0xf74011e4: Unimplemented Opcode 60 4C 2F F7 B0 4F 2F F7
0xf74011e8: Unimplemented Opcode B0 4F 2F F7 00 50 2F F7
0xf74011ec: Unimplemented Opcode 00 50 2F F7 80 50 2F F7
0xf74011f0: Unimplemented Opcode 80 50 2F F7 00 51 2F F7
0xf74011f4: Unimplemented Opcode 00 51 2F F7 C0 51 2F F7
0xf74011f8: Unimplemented Opcode C0 51 2F F7 20 53 2F F7
0xf74011fc: Unimplemented Opcode 20 53 2F F7 74 00 00 00
0xf72f9830: Unimplemented Opcode F3 0F 1E FB 56 B8 01 00

Also some symbols cannot be applied

Error: Global Symbol _ZGTtnaj not found, cannot apply R_386_GLOB_DAT @0xf7405d00 ((nil))
Error: Global Symbol _ZGTtdlPv not found, cannot apply R_386_GLOB_DAT @0xf7406168 ((nil))
Error: Symbol FMOD_DSP_Connection_Mix5_1To5_1_SIMD not found, cannot apply R_386_JMP_SLOT @0xf75a6d18 (0x3942a)
Error: Symbol FMOD_DSP_Connection_Mix7_1To7_1_SIMD not found, cannot apply R_386_JMP_SLOT @0xf75a6ee0 (0x39b4a)
Error: Symbol FMOD_OS_SupportsSSE not found, cannot apply R_386_JMP_SLOT @0xf75a6f4c (0x39cfa)
Error: Symbol FMOD_DSP_Convert_FloatToPCM16 not found, cannot apply R_386_JMP_SLOT @0xf75a7068 (0x3a16a)
Error: Symbol FMOD_DSP_Distortion_SIMD not found, cannot apply R_386_JMP_SLOT @0xf75a7214 (0x3a81a)
Error: Symbol FMOD_DSP_Connection_MixStereoToStereo_SIMD not found, cannot apply R_386_JMP_SLOT @0xf75a7608 (0x3b7ea)
Error: Symbol FMOD_Resampler_Linear_PCM16_Stereo not found, cannot apply R_386_JMP_SLOT @0xf75a78f0 (0x3c38a)
Error: Symbol FMOD_Resampler_Linear_PCM16_Mono not found, cannot apply R_386_JMP_SLOT @0xf75a7aac (0x3ca7a)
Error: Symbol FMOD_DSP_Connection_MixMonoTo7_1_SIMD not found, cannot apply R_386_JMP_SLOT @0xf75a7e18 (0x3d82a)
Error: Symbol FMOD_DSP_Connection_MixMonoToStereo_SIMD not found, cannot apply R_386_JMP_SLOT @0xf75a81ac (0x3e67a)
Error: Symbol FMOD_DSP_Connection_MixMonoTo5_1_SIMD not found, cannot apply R_386_JMP_SLOT @0xf75a85c0 (0x3f6ca)
Error: Symbol XSetNormalHints not found, cannot apply R_386_JMP_SLOT @0x826a36c (0x804cefa)
Error: Symbol XAllocNamedColor not found, cannot apply R_386_JMP_SLOT @0x826a50c (0x804d57a)
Error: Symbol gamma not found, cannot apply R_386_JMP_SLOT @0x826a588 (0x804d76a)
Error: Symbol bcopy not found, cannot apply R_386_JMP_SLOT @0x826a5c0 (0x804d84a)

The game can be downloaded on http://www.racer.nl/
I think it uses OpenGL >= 3.0 so it won't work via GL4ES

UPDATE:
WorldOfGoo Demo doesn't work either
box86 Log

Error: Global Symbol _ZGTtnaj not found, cannot apply R_386_GLOB_DAT @0xf754bd00 ((nil))
Error: Global Symbol _ZGTtdlPv not found, cannot apply R_386_GLOB_DAT @0xf754c168 ((nil))
0xf7f97e64: Unimplemented Opcode D0 E7 F7 F7 80 E7 F7 F7
0xf7f97e68: Unimplemented Opcode 80 E7 F7 F7 01 00 00 00
0xf75471d4: Unimplemented Opcode 10 AA 43 F7 A0 AA 43 F7
0xf75471d8: Unimplemented Opcode A0 AA 43 F7 D0 AA 43 F7
0xf75471dc: Unimplemented Opcode D0 AA 43 F7 50 AB 43 F7
0xf75471e0: Unimplemented Opcode 50 AB 43 F7 60 AC 43 F7
0xf75471e4: Unimplemented Opcode 60 AC 43 F7 B0 AF 43 F7
0xf75471e8: Unimplemented Opcode B0 AF 43 F7 00 B0 43 F7
0xf75471ec: Unimplemented Opcode 00 B0 43 F7 80 B0 43 F7
0xf75471f0: Unimplemented Opcode 80 B0 43 F7 00 B1 43 F7
0xf75471f4: Unimplemented Opcode 00 B1 43 F7 C0 B1 43 F7
0xf75471f8: Unimplemented Opcode C0 B1 43 F7 20 B3 43 F7
0xf75471fc: Unimplemented Opcode 20 B3 43 F7 74 00 00 00

Is there something wrong with my setup? Is it because i run it on x64? The box86's libs directory points to 32bit system libs

Issues on the Raspberry Pi 3B+

I've been trying to get this working for a few days, and some friends with more experience coding have been helping me troubleshoot. We finally got to using the command, and now this issue pops up:
Using default BOX86_LD_LIBRARY_PATH: ./:lib/ Using default BOX86_PATH: ./:bin/ Counted 57 Env var Looking for /home/pi/Downloads/counter-strike-1-6.exe Error: /home/pi/Downloads/counter-strike-1-6.exe is not an executable file
This error has stumped us, and we have no idea where to go from here. Is there a fix for this?

Option for tracing jmp/call only?

I have found this very useful while debuggind dll code. Does not produce too much output or require external libraries, but debug becomes much simplier

+                    printf_log(LOG_NONE, "call near %p\n", ip);
                     STEP
                     break;
                 case 3:                 /* CALL FAR Ed */
@@ -1328,12 +1347,14 @@ _trace:
                         Push16(emu, R_CS);
                         Push(emu, ip);
                         ip = ED->dword[0];
+                        printf_log(LOG_NONE, "call far %p\n", ip);
                         R_CS = (ED+1)->word[0];
                         STEP
                     }
                     break;
                 case 4:                 /* JMP NEAR Ed */
                     ip = ED->dword[0];
+                    printf_log(LOG_NONE, "jmp near %p\n", ip);
                     STEP
                     break;
                 case 5:                 /* JMP FAR Ed */
@@ -1346,6 +1367,7 @@ _trace:
                         goto fini;
                     } else {
                         ip = ED->dword[0];
+                        printf_log(LOG_NONE, "jmp far %p\n", ip);

Error initializing native ld-linux.so.2

Hi,
I found your project and it sounds very interesting.
I have an X86 project and I need to make him works on ARM.

I have this error :
Error initializing native ld-linux.so.2 (last dlerror is ld-linux.so.2: cannot open ...)

But the file is here, i probably missed something.

Anyway, i would also have another commercial question, may i have your mail address ?

Best regards,
Baptiste

GAME - Prison-architect: missing symbols, fails to boot.

pi@raspberrypi:/media/pi/Seagate Expansion Drive/linux-games/prison-architect/data/noarch/game $ BOX86_LD_LIBRARY_PATH=.:fmod/lib/:/lib:./lib:.:./lib/i686-pc-linux-gnu:./lib32:/usr/i686-linux-gnu/lib box86 PrisonArchitect.i686 
BOX86_LD_LIBRARY_PATH: ./:fmod/lib/:/lib/:./lib/:./:./lib/i686-pc-linux-gnu/:./lib32/:/usr/i686-linux-gnu/lib/
Using default BOX86_PATH: ./:bin/
Counted 45 Env var
Looking for PrisonArchitect.i686
Using native(wrapped) libGL.so.1
Using native(wrapped) libGLU.so.1
Using native(wrapped) libSDL2-2.0.so.0
Using native(wrapped) libpthread.so.0
Using emulated ./lib/libpops_api.so
Using native(wrapped) libz.so.1
Using emulated /usr/i686-linux-gnu/lib/libresolv.so.2
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) librt.so.1
Using native(wrapped) libuuid.so.1
Using native(wrapped) libm.so.6
Using native(wrapped) libdl.so.2
Using emulated /usr/i686-linux-gnu/lib/libstdc++.so.6
Using emulated /usr/i686-linux-gnu/lib/libgcc_s.so.1
Warning, don't know of to handle rel #150 type: R_386_TLS_TPOFF (0xb53e5fe0)
Warning, don't know of to handle rel #151 type: R_386_TLS_TPOFF (0xb53e5fe4)
Warning, don't know of to handle rel #156 type: R_386_TLS_TPOFF (0xb53e5ff8)
Error: Symbol __resolv_context_get_preinit not found, cannot apply R_386_JMP_SLOT @0xb53e605c (0x3186)
Error: Symbol __resolv_context_get_override not found, cannot apply R_386_JMP_SLOT @0xb53e6060 (0x3196)
Error: Symbol __resolv_context_get not found, cannot apply R_386_JMP_SLOT @0xb53e6084 (0x3226)
Error: Symbol __resolv_context_put not found, cannot apply R_386_JMP_SLOT @0xb53e60a4 (0x32a6)
Error: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb538a198 (0x6b676)
Error: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb538a474 (0x6c1e6)
Error: Symbol SDL_GetWindowPixelFormat not found, cannot apply R_386_JMP_SLOT @0x89f2550 (0x81a74a6)
Error: Symbol toascii not found, cannot apply R_386_JMP_SLOT @0x89f25ec (0x81a7716)
Error: Symbol SDL_SetTextInputRect not found, cannot apply R_386_JMP_SLOT @0x89f26cc (0x81a7a96)
Error: Symbol __open_2 not found, cannot apply R_386_JMP_SLOT @0x89f26fc (0x81a7b56)
WindowManagerSDL2 :: Main
SDL Version: Compiled against 2.0.3, running with 2.0.9
User save path set to '/home/pi/.Prison Architect/'
clink_1.0 linux gog compiled 16:30:21, Jul  1 2019
Loading Preferences from /home/pi/.Prison Architect/preferences.txt
Failed to find /home/pi/.Prison Architect/preferences.txt
Suggested resolution : 1920 x 1080
Opening window 1920 x 1080 x 32, fullscreen 
Opening on display 0 with bounds (0, 0) - (1920 x 1080)
PltResolver: Ofs=0x860d5ad, Id=2696 (IP=(nil))

First time running this opened a blackscreen (for fullscreen) then crashed. Running this same command again results is just the error, no window is opened again though.

Check for Python dependency / use python3 binary if available

Currently, the build fails on Ubuntu 19.04 as there's no python binary, only python3 by default.

~/src/box86/build$ make
[  1%] Generating ../src/wrapped/generated/wrapper.c, ../src/wrapped/generated/wrapper.h
/usr/bin/env: ‘python’: No such file or directory
make[2]: *** [CMakeFiles/box86.dir/build.make:112: ../src/wrapped/generated/wrapper.c] Error 127
make[1]: *** [CMakeFiles/Makefile2:72: CMakeFiles/box86.dir/all] Error 2
make: *** [Makefile:95: all] Error 2

Would it be possible to use CMake to detect the system python and change the shebang line in rebuild_wrappers.py? The script seems to run with python3.

Compiler error on Ubuntu for Nintendo Switch

Can't compile on Linux for Tegra, a modified kernel for the Nintendo Switch. OS is Ubuntu 18.04.

I have tried with all three commands to build from the compile instructions, all give the same result.

When I compile, I get this error:

/tmp/ccZF9e10.s: Assembler messages:
/tmp/ccZF9e10.s:2834: Error: unknown mnemonic 'mrc' -- 'mrc p15,0,x0,c9,c14,0'
/tmp/ccZF9e10.s:2843: Error: unknown mnemonic 'mrc' -- 'mrc p15,0,x0,c9,c12,1'
/tmp/ccZF9e10.s:2883: Error: unknown mnemonic 'mrc' -- 'mrc p15,0,x0,c9,c13,0'
CMakeFiles/box86.dir/build.make:423: recipe for target 'CMakeFiles/box86.dir/src/x86emu.c.o' failed
make[2]: *** [CMakeFiles/box86.dir/src/x86emu.c.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/box86.dir/all' failed
make[1]: *** [CMakeFiles/box86.dir/all] Error 2
Makefile:94: recipe for target 'all' failed
make: *** [all] Error 2

(Inserting this log as code doesn't respect line breaks :\ )

The only thing that I can think of is that the Switch uses a Tegra SoC, and while is a full ARM64 device, may not have all the instructions / different instructions to other ARM64 boards?

I may end up compiling on a RPi 3B+ and copying the build over.

Printer driver (CAPT)

I try to use box86 to run the Canon CAPT printer driver, which is sadly not offered for ARM.
Currently I see a lot of error messages.

Using default BOX86_LD_LIBRARY_PATH: ./:lib/
Using default BOX86_PATH: ./:bin/
Counted 42 Env var
Looking for sbin/ccpd
Using emulated lib/libcups.so.2
Using emulated lib/libgssapi_krb5.so.2
Using emulated lib/libkrb5.so.3
Using emulated lib/libk5crypto.so.3
Using emulated lib/libkrb5support.so.0
Using emulated lib/libkeyutils.so.1
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using emulated lib/libresolv.so.2
Using native(wrapped) libdl.so.2
Using emulated lib/libcom_err.so.2
Using emulated lib/libavahi-common.so.3
Using emulated lib/libavahi-client.so.3
Using native(wrapped) libdbus-1.so.3
Using emulated lib/libgnutls.so.30
Using native(wrapped) libz.so.1
Using emulated lib/libp11-kit.so.0
Using emulated lib/libffi.so.6
Using emulated lib/libidn.so.11
Using emulated lib/libtasn1.so.6
Using emulated lib/libnettle.so.6
Using emulated lib/libhogweed.so.4
Using emulated lib/libgmp.so.10
Using native(wrapped) libm.so.6
Warning, don't know of to handle rel #174 type: 0xe (unknown) (0x76a5afc0)
Warning, don't know of to handle rel #175 type: 0xe (unknown) (0x76a5afc4)
Error: Global Symbol in6addr_any not found, cannot apply R_386_GLOB_DAT @0x76a5afc8 ((nil))
Warning, don't know of to handle rel #180 type: 0xe (unknown) (0x76a5afd8)
Error: Symbol __gmtime_r not found, cannot apply R_386_JMP_SLOT @0x76a5b044 (0x2426)
Error: Symbol __res_maybe_init not found, cannot apply R_386_JMP_SLOT @0x76a5b048 (0x2436)
Error: Symbol __res_iclose not found, cannot apply R_386_JMP_SLOT @0x76a5b050 (0x2456)
Error: Symbol __sendmmsg not found, cannot apply R_386_JMP_SLOT @0x76a5b098 (0x2576)
Error: Symbol __asprintf_chk not found, cannot apply R_386_JMP_SLOT @0x76fb6090 (0x1f06)
Error: Global Symbol secure_getenv not found, cannot apply R_386_GLOB_DAT @0x76ff2f50 ((nil))
Error: Global Symbol in6addr_any not found, cannot apply R_386_GLOB_DAT @0x76b6de64 ((nil))
Error: Symbol __asprintf_chk not found, cannot apply R_386_JMP_SLOT @0x76b6e434 (0x131f6)
Error: Symbol __res_nclose not found, cannot apply R_386_JMP_SLOT @0x76b6e7e8 (0x140c6)
Error: Symbol __res_ninit not found, cannot apply R_386_JMP_SLOT @0x76b6e950 (0x14666)
Error: Symbol __asprintf_chk not found, cannot apply R_386_JMP_SLOT @0x76bc11e0 (0x6dc6)
Error: Symbol dbus_message_iter_get_basic not found, cannot apply R_386_JMP_SLOT @0x76a36018 (0x2466)
Error: Symbol dbus_connection_unref not found, cannot apply R_386_JMP_SLOT @0x76a36024 (0x2496)
Error: Symbol dbus_message_iter_init_append not found, cannot apply R_386_JMP_SLOT @0x76a36028 (0x24a6)
Error: Symbol dbus_timeout_get_data not found, cannot apply R_386_JMP_SLOT @0x76a36030 (0x24c6)
Error: Symbol dbus_connection_get_dispatch_status not found, cannot apply R_386_JMP_SLOT @0x76a36040 (0x2506)
Error: Symbol dbus_connection_set_timeout_functions not found, cannot apply R_386_JMP_SLOT @0x76a36044 (0x2516)
Error: Symbol dbus_message_get_path not found, cannot apply R_386_JMP_SLOT @0x76a36048 (0x2526)
Error: Symbol dbus_watch_get_flags not found, cannot apply R_386_JMP_SLOT @0x76a36054 (0x2556)
Error: Symbol dbus_message_get_args not found, cannot apply R_386_JMP_SLOT @0x76a36060 (0x2586)
Error: Symbol dbus_watch_get_data not found, cannot apply R_386_JMP_SLOT @0x76a36074 (0x25d6)
Error: Symbol dbus_message_unref not found, cannot apply R_386_JMP_SLOT @0x76a3608c (0x2636)
Error: Symbol dbus_message_iter_close_container not found, cannot apply R_386_JMP_SLOT @0x76a36090 (0x2646)
Error: Symbol dbus_error_free not found, cannot apply R_386_JMP_SLOT @0x76a36094 (0x2656)
Error: Symbol dbus_watch_get_unix_fd not found, cannot apply R_386_JMP_SLOT @0x76a360a0 (0x2686)
Error: Symbol dbus_connection_send_with_reply_and_block not found, cannot apply R_386_JMP_SLOT @0x76a360a8 (0x26a6)
Error: Symbol dbus_message_iter_append_fixed_array not found, cannot apply R_386_JMP_SLOT @0x76a360ac (0x26b6)
Error: Symbol dbus_watch_get_enabled not found, cannot apply R_386_JMP_SLOT @0x76a360b0 (0x26c6)
Error: Symbol dbus_timeout_get_interval not found, cannot apply R_386_JMP_SLOT @0x76a360bc (0x26f6)
Error: Symbol dbus_timeout_set_data not found, cannot apply R_386_JMP_SLOT @0x76a360d8 (0x2766)
Error: Symbol dbus_message_new_method_call not found, cannot apply R_386_JMP_SLOT @0x76a360e0 (0x2786)
Error: Symbol dbus_message_iter_get_fixed_array not found, cannot apply R_386_JMP_SLOT @0x76a360e4 (0x2796)
Error: Symbol dbus_message_iter_next not found, cannot apply R_386_JMP_SLOT @0x76a360e8 (0x27a6)
Error: Symbol dbus_message_iter_open_container not found, cannot apply R_386_JMP_SLOT @0x76a360ec (0x27b6)
Error: Symbol dbus_timeout_get_enabled not found, cannot apply R_386_JMP_SLOT @0x76a360f0 (0x27c6)
Error: Symbol dbus_watch_handle not found, cannot apply R_386_JMP_SLOT @0x76a36118 (0x2866)
Error: Symbol dbus_message_get_member not found, cannot apply R_386_JMP_SLOT @0x76a3611c (0x2876)
Error: Symbol dbus_connection_ref not found, cannot apply R_386_JMP_SLOT @0x76a36120 (0x2886)
Error: Symbol dbus_error_init not found, cannot apply R_386_JMP_SLOT @0x76a36124 (0x2896)
Error: Symbol dbus_timeout_handle not found, cannot apply R_386_JMP_SLOT @0x76a3612c (0x28b6)
Error: Symbol dbus_message_iter_get_arg_type not found, cannot apply R_386_JMP_SLOT @0x76a36130 (0x28c6)
Error: Symbol dbus_error_is_set not found, cannot apply R_386_JMP_SLOT @0x76a36138 (0x28e6)
Error: Symbol dbus_message_iter_recurse not found, cannot apply R_386_JMP_SLOT @0x76a36140 (0x2906)
Error: Symbol dbus_message_get_interface not found, cannot apply R_386_JMP_SLOT @0x76a36148 (0x2926)
Error: Symbol dbus_connection_set_dispatch_status_function not found, cannot apply R_386_JMP_SLOT @0x76a36154 (0x2956)
Error: Symbol dbus_connection_add_filter not found, cannot apply R_386_JMP_SLOT @0x76a3615c (0x2976)
Error: Symbol dbus_message_append_args not found, cannot apply R_386_JMP_SLOT @0x76a36164 (0x2996)
Error: Symbol dbus_watch_set_data not found, cannot apply R_386_JMP_SLOT @0x76a3616c (0x29b6)
Error: Symbol dbus_message_is_signal not found, cannot apply R_386_JMP_SLOT @0x76a36174 (0x29d6)
Error: Symbol dbus_connection_set_watch_functions not found, cannot apply R_386_JMP_SLOT @0x76a3617c (0x29f6)
Error: Symbol dbus_connection_dispatch not found, cannot apply R_386_JMP_SLOT @0x76a36184 (0x2a16)
Error: Symbol dbus_message_iter_get_element_type not found, cannot apply R_386_JMP_SLOT @0x76a3618c (0x2a36)
Error: Symbol obstack_vprintf not found, cannot apply R_386_32 @0x76447b88 ((nil))
Error: Symbol _obstack_newchunk not found, cannot apply R_386_JMP_SLOT @0x76448104 (0xb1d6)
Error: Global Symbol fmemopen not found, cannot apply R_386_GLOB_DAT @0x76750328 ((nil))
Error: Global Symbol secure_getenv not found, cannot apply R_386_GLOB_DAT @0x7675073c ((nil))
Error: Symbol pthread_rwlock_wrlock not found, cannot apply R_386_JMP_SLOT @0x76c637dc (0xf376)
Error: Symbol pthread_rwlock_init not found, cannot apply R_386_JMP_SLOT @0x76c63884 (0xf616)
Error: Symbol pthread_rwlock_unlock not found, cannot apply R_386_JMP_SLOT @0x76c6399c (0xfa76)
Error: Symbol fcntl64 not found, cannot apply R_386_JMP_SLOT @0x76c63bf0 (0x103c6)
Error: Symbol pthread_rwlock_rdlock not found, cannot apply R_386_JMP_SLOT @0x76c63de4 (0x10b96)
Error: Symbol lockf64 not found, cannot apply R_386_JMP_SLOT @0x76c63e64 (0x10d96)
Error: Symbol __res_init not found, cannot apply R_386_JMP_SLOT @0x76c63ebc (0x10ef6)

Crypt of the Necrodancer: weak symbol / symbols not found

pi@raspberrypi:/media/pi/Seagate Expansion Drive/linux-games/crypt-of-the-necrodancer/data/noarch/game $ BOX86_LD_LIBRARY_PATH=.:fmod/lib/:/lib:./lib:.:./lib/i686-pc-linux-gnu:./lib32:/usr/i686-linux-gnu/lib box86 NecroDancerBOX86_LD_LIBRARY_PATH: ./:fmod/lib/:/lib/:./lib/:./:./lib/i686-pc-linux-gnu/:./lib32/:/usr/i686-linux-gnu/lib/
Using default BOX86_PATH: ./:bin/
Counted 45 Env var
Looking for NecroDancer
Using native(wrapped) libGL.so.1
Using emulated ./fmod/lib/libfmodex.so
Using native(wrapped) libdl.so.2
Using emulated /usr/i686-linux-gnu/lib/libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using emulated /usr/i686-linux-gnu/lib/libgcc_s.so.1
Using emulated libglfw.so.2
Using native(wrapped) libXrandr.so.2
Using native(wrapped) libX11.so.6
Using native(wrapped) libopenal.so.1
Using native(wrapped) libogg.so.0
Using native(wrapped) libvorbis.so.0
Error: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb669d198 (0x6b676)
Error: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb669d474 (0x6c1e6)
Error: Symbol FMOD_Resampler_Linear_PCM16_Stereo not found, cannot apply R_386_JMP_SLOT @0xb6824040 (0xfa56)
Error: Symbol FMOD_DSP_Connection_Mix7_1To7_1_SIMD not found, cannot apply R_386_JMP_SLOT @0xb682412c (0xfe06)
Error: Symbol FMOD_Resampler_Linear_PCM16_Mono not found, cannot apply R_386_JMP_SLOT @0xb6824330 (0x10616)
Error: Symbol FMOD_DSP_Connection_MixStereoToStereo_SIMD not found, cannot apply R_386_JMP_SLOT @0xb682439c (0x107c6)
Error: Symbol FMOD_DSP_Convert_FloatToPCM16 not found, cannot apply R_386_JMP_SLOT @0xb68243c4 (0x10866)
Error: Symbol FMOD_DSP_Connection_MixMonoToStereo_SIMD not found, cannot apply R_386_JMP_SLOT @0xb68243f0 (0x10916)
Error: Symbol FMOD_DSP_Connection_MixMonoTo5_1_SIMD not found, cannot apply R_386_JMP_SLOT @0xb6824434 (0x10a26)
Error: Symbol FMOD_DSP_Connection_Mix5_1To5_1_SIMD not found, cannot apply R_386_JMP_SLOT @0xb6824510 (0x10d96)
Error: Symbol FMOD_DSP_Distortion_SIMD not found, cannot apply R_386_JMP_SLOT @0xb68245c0 (0x11056)
Error: Symbol FMOD_OS_SupportsSSE not found, cannot apply R_386_JMP_SLOT @0xb6824700 (0x11556)
Error: Symbol FMOD_DSP_Connection_MixMonoTo7_1_SIMD not found, cannot apply R_386_JMP_SLOT @0xb6824744 (0x11666)
Error: Symbol XConvertCase not found, cannot apply R_386_JMP_SLOT @0xb6f5e0a8 (0x36c6)
Segmentation fault

Enter the gungeon fails to start (weak symbol, symbol not found, unimplemented opcode)

Device: raspberry pi 4 (4gb)
OS: Raspbian (32bit)
Game: Enter the Gungeon

BOX86_LD_LIBRARY_PATH=/usr/i686-linux-gnu/lib/ box86 EtG.x86
BOX86_LD_LIBRARY_PATH: /usr/i686-linux-gnu/lib/
Using default BOX86_PATH: ./:bin/
Counted 49 Env var
Looking for EtG.x86
Using native(wrapped) libdl.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using emulated /usr/i686-linux-gnu/lib/libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using emulated /usr/i686-linux-gnu/lib/libgcc_s.so.1
Error: Weak Symbol _ZGTtnaj not found, cannot apply R_386_JMP_SLOT @0xb6b6f198 (0x6b676)
Error: Weak Symbol _ZGTtdlPv not found, cannot apply R_386_JMP_SLOT @0xb6b6f474 (0x6c1e6)
Error: Symbol pthread_mutexattr_setprotocol not found, cannot apply R_386_JMP_SLOT @0x9ef504c (0x8058306)
Error: Symbol sigreturn not found, cannot apply R_386_JMP_SLOT @0x9ef5200 (0x80589d6)
Error: Symbol mincore not found, cannot apply R_386_JMP_SLOT @0x9ef52b0 (0x8058c96)
Error: Symbol setcontext not found, cannot apply R_386_JMP_SLOT @0x9ef5454 (0x8059326)
Error: Symbol __logf_finite not found, cannot apply R_386_JMP_SLOT @0x9ef55bc (0x80598c6)
Using native(wrapped) libX11.so.6
Using native(wrapped) libXext.so.6
Using native(wrapped) libXcursor.so.1
Using native(wrapped) libXinerama.so.1
Using native(wrapped) libXi.so.6
Using native(wrapped) libXrandr.so.2
Using native(wrapped) libXss.so.1
Using native(wrapped) libXxf86vm.so.1
Set current directory to /home/pi/Downloads/data/noarch/game
Found path: /home/pi/Downloads/data/noarch/game/EtG.x86
Using emulated /home/pi/Downloads/data/noarch/game/EtG_Data/Mono/x86/libmono.so
Error: Global Symbol data_start not found, cannot apply R_386_GLOB_DAT @0xb440bb74 ((nil))
Error: Global Symbol __data_start not found, cannot apply R_386_GLOB_DAT @0xb440bd4c ((nil))
Mono path[0] = '/home/pi/Downloads/data/noarch/game/EtG_Data/Managed'
Mono config path = '/home/pi/Downloads/data/noarch/game/EtG_Data/Mono/etc'
Receiving unhandled NULL exception
25088|0x90866c4: Unimplemented Opcode 66 8C E1 89 48 18 8D 88
Receiving unhandled NULL exception
25088|0x90866c4: Unimplemented Opcode 66 8C E1 89 48 18 8D 88
Receiving unhandled NULL exception

The lines "25088|0x90866c4: Unimplemented Opcode 66 8C E1 89 48 18 8D 88" are repeated a few hundred times until a seg fault error.

Hopefully that's useful to you! If you need more information then i'd be happy to help.

Also I did try stardew valley but i had errors there as well, not sure if you want me to open an issue for each game that i have errors with, though so far its just been EtG and stardew. World of goo worked perfectly which was amazing!

Problem with callbacks

Here's an example of problematic scenario with callbacks:

  • SDL_OpenAudio is called with callback which uses AddCallback to add a new callback
  • inside the callback function the code calls qsort which uses AddSharedCallback to add a new shared callback and then uses FreeCallback to remove the shared callback
  • since qsort callback is shared, it uses the same emu as callback from SDL_OpenAudio, so removing the shared callback also removes the callback from SDL_OpenAudio
  • further calls to SDL_OpenAudio callback print the text Warning, Callback not found?! instead of calling the callback

x86_64 build supported?

For testing purposes it'd be easier to run this on an x86_64 desktop.
At the moment the build errors out with the following.

error.log

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.