I’m trying to run TIC-80 on Debian ARM64 via PRoot in Termux, but encountering execution issues.
Why?
The Android APK version of TIC-80, while functional, presents several limitations that make development less than ideal:
- Touch-based controls are cumbersome for precise pixel art and code editing
- File management is more restrictive compared to Linux environments
- Multi-tasking between editor, documentation, art references and other tools is challenging
Termux X11 Advantages:
- Proper keyboard input for efficient coding and shortcut usage
- Mouse support for precise sprite and map editing
- Familiar Linux workflow with terminal access and file system control
- Multi-window environment allowing TIC-80 to run alongside other development tools
Having TIC-80 running as a native Linux application in Termux X11 would essentially provide a full-featured development environment on mobile devices, bridging the gap between mobile convenience and desktop-level productivity for fantasy computer development.
My Environment:
- Termux with PRoot
- Debian ARM64 distribution
- TIC-80 Linux ARM64 GCC12 version
Console output:
❯ proot-distro login debian --shared-tmp --termux-home
root@localhost:~# cd tic80-linux-arm64-gcc12
root@localhost:~/tic80-linux-arm64-gcc12# lsd
libSDL2-2.0.so tic80
root@localhost:~/tic80-linux-arm64-gcc12# ./tic80
bash: ./tic80: cannot execute: required file not found
I’ve verified files are present (tic80 executable and libSDL2-2.0.so).
The Issue:
My Theory: Missing Root Features in PRoot Environment
The core problem stems from fundamental limitations of the PRoot environment that prevent proper execution of the binary:
PRoot Constraints:
- No true root privileges - PRoot uses ptrace to simulate root, not actual kernel-level access
- Missing binary format handlers - The system may lack proper recognition of ARM64 ELF binaries
- Incomplete /proc and /sys filesystems - Critical for dynamic linking and library resolution
- Limited ld.so functionality - Dynamic linker may not properly resolve dependencies in this environment
My Wish
I’m hoping to create a seamless Linux-style development experience on Android through Termux X11, where TIC-80 runs as a native Linux application rather than the constrained Android APK. This would give me proper keyboard and mouse support, standard file system access, and the ability to integrate with other Linux tools - essentially transforming my mobile device into a portable fantasy console workstation.
What I really want is to bridge the gap between mobile convenience and desktop functionality, creating a pocket-sized development environment where I can comfortably code, create pixel art, and test games with the same efficiency as on a desktop machine. The Android APK version serves basic needs, but having the full Linux version running in Termux would unlock TIC-80’s true potential for on-the-go game development.