Skip to content

Improve build instructions #6

@stkptr

Description

@stkptr

The build instructions are missing a couple dependencies (Debian): make libavutil-dev libavcodec-dev libavformat-dev libswscale-dev

Also, the isolicence.dat required to build the ISO seems to be nonstandard. I tried using mkpsxiso to dump the license from the published ISO but it's too small (pscd-new demands 0x930 * 16 or 37632 bytes, dumped is 28032 bytes). So I'm unsure how to generate the disc image.

I created a Dockerfile which builds the game by downloading it via Git (name it Dockerfile, run with DOCKER_BUILDKIT=1 docker build --output=out .):

FROM debian:12.5 AS build

RUN apt update \
    && apt install -y \
        python3-numpy python3-scipy python3-pillow \
        genisoimage \
        git wget \
        make \
        libavutil-dev libavcodec-dev libavformat-dev libswscale-dev \
    && rm -rf /var/lib/apt/lists/*

ENV WURL https://wonderful.asie.pl/bootstrap/wf-bootstrap-x86_64.tar.gz
RUN mkdir -p /opt/wonderful && wget -O- "${WURL}" | tar -xzC /opt/wonderful
ENV PATH /opt/wonderful/bin:${PATH}
ENV WONDERFUL_TOOLCHAIN /opt/wonderful
RUN wf-pacman -Syu

RUN ln -s /proc/mounts /etc/mtab
RUN yes '' | wf-pacman -S toolchain-gcc-mipsel-elf
ENV PATH /opt/wonderful/toolchain/gcc-mipsel-elf/bin:${PATH}

RUN git clone https://github.com/ChenThread/candyk-psx
WORKDIR /candyk-psx
RUN git checkout 5d91befa && make

WORKDIR /

RUN git clone https://github.com/ChenThread/fromage
WORKDIR /fromage
RUN git checkout 6ecc7a9c && mkdir obj out

RUN make clean && make TYPE=exe REGION=usa && mv boot.exe out/boot-usa.exe
RUN make clean && make TYPE=exe REGION=europe && mv boot.exe out/boot-eur.exe

COPY isolicence.dat /fromage
# I'm not sure where these are output
#RUN make clean && make REGION=usa && mv somewhere.iso out/iso-usa.iso
#RUN make clean && make REGION=europe && mv somewhere.iso out/iso-eur.iso

FROM scratch AS binaries
COPY --from=build /fromage/out /

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions