[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: New Jitter tag v0.9.291, updated poke submodule
From: |
Mohammad-Reza Nabipoor |
Subject: |
Re: New Jitter tag v0.9.291, updated poke submodule |
Date: |
Tue, 29 Nov 2022 03:04:05 +0100 |
Hello Luca,
There are some problems in Jitter-generated codes when compiling poke with
no-threading dispatch on ppc32.
To avoid cross-compiling poke, you can use the qemu user emulation and
[voidlinux for power](https://voidlinux-ppc.org/) distribution.
It's slower, but you have a real distribution in which you can install
packages easily (it's much faster on modern hardware; it runs much faster
on a cheap VPS machine than my old laptop).
I assume you're running these commands with a non-root user with sudo
capability.
And I'm explaining things more detailed to make it more useful for everybody.
First you have to enable "qemu user emulation":
```sh
sudo apt install qemu binfmt-support qemu-user-static
```
An easy way to manage the chroots is using
[schroot](https://wiki.debian.org/Schroot) tool:
```sh
sudo apt install schroot
```
Download the voidlinux ppc32 rootfs and create a schroot configuration:
```sh
wget https://repo.voidlinux-ppc.org/live/current/void-ppc-ROOTFS-20210825.tar.xz
sudo mkdir voidlinux-ppc32
cd voidlinux-ppc32
sudo tar -Jxf ../void-ppc-ROOTFS-20210825.tar.xz
DIR=$(pwd)
cd ..
cat <<EOF | sudo tee /etc/schroot/chroot.d/voidlinux-ppc32.conf
[voidlinux-ppc32]
description=Void Linux PowerPC 32-bit
directory=$DIR
root-users=$(whoami)
users=$(whoami)
type=directory
profile=minimal
EOF
```
Then you can enter the chroot environment:
```sh
schroot -c voidlinux-ppc32 -u root
```
And then inside the chroot:
```sh
xbps-install -Su # Update the system (important)
xbps-install -S gcc make pkg-config readline-devel gc-devel
```
Now outside of the chroot env, you have to copy the `poke-2.4.tar.gz`
file (produced by `make dist`) to `$CUR/root` directory (of course, with
no-threading enabled).
Then inside the chroot env:
```sh
tar -xzf poke-2.4.tar.gz
cd poke-2.4
mkdir build
cd build
../configure
make
./run poke
```
I get this error:
```text
qemu: uncaught target signal 4 (Illegal instruction) - core dumped
Illegal instruction
```
Have fun!