epsilon-devel
[Top][All Lists]
Advanced

[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!



reply via email to

[Prev in Thread] Current Thread [Next in Thread]