• Stars
    star
    143
  • Rank 248,876 (Top 6 %)
  • Language
    Shell
  • License
    MIT License
  • Created almost 4 years ago
  • Updated 15 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

pspdev master repository

PSPDEV

CI CI-Docker Docker Pulls

Main PSP Repo for building the whole PSP Development environment in your local machine.

Table of Contents

This program will automatically build and install the whole compiler and other tools used in the creation of Homebrew software for the Sony PlayStation Portable® video game system.

Up and running

You can get started very quickly by grabbing the latest development pre-releases from the releases' page for your platform and extract them to the pspdev directory in your path.

Export the PSPDEV environment variable to point to the pspdev directory. For example:

export PSPDEV=~/pspdev
export PATH=$PATH:$PSPDEV/bin

What these scripts do

These scripts download (git clone) and install:

Requirements

  • Install gcc/clang, make, cmake, patch, git, texinfo, flex, bison, gettext, wget, gsl, gmp, mpfr, mpc, libusb, readline, libarchive, gpgme, bash, openssl and libtool.
  • If you don't have those. We offer a script to help you for installing dependencies:

Ubuntu/Debian

sudo ./prepare-debian-ubuntu.sh

Fedora

sudo ./prepare-fedora.sh

Arch

sudo ./prepare-arch.sh

OSX

sudo ./prepare-mac-os.sh
  1. Optional. If you are upgrading from the previous version of the PSPDEV environment, it is highly recommended removing the content of the PSPDEV folder before upgrade. This is a necessary step after the major toolchain upgrade.

    sudo rm -rf $PSPDEV
  2. Ensure that you have enough permissions for managing PSPDEV location (default to /usr/local/pspdev, but you can use a different path). PSPDEV location MUST NOT have spaces or special characters in its path! PSPDEV should be an absolute path. On Unix systems, if the command mkdir -p $PSPDEV fails for you, you can set access for the current user by running commands:

    export PSPDEV=/usr/local/pspdev
    sudo mkdir -p $PSPDEV
    sudo chown -R $USER: $PSPDEV
  3. Add this to your login script (example: ~/.bash_profile) Note: Ensure that you have full access to the PSPDEV path. You can change the PSPDEV path with the following requirements: only use absolute paths, don't use spaces, only use Latin characters.

    export PSPDEV=/usr/local/pspdev
    export PATH=$PATH:$PSPDEV/bin
  4. Run build-all.sh

    ./build-all.sh

Docker generation

This repo also uses CI/CD to create a docker image called pspdev/pspdev:latest per change. This is useful if you're a developer that wants to create/port an application to the PSP. You can compile your project using this docker image.

Extra steps

If you want, you can JUST install the extra dependencies as psplinkusb and ebootsigner. To achieve this execute

./build-extra.sh

macOS

If you download the pre-built macOS binaries and get a security error such as "pspsh" cannot be opened because the developer cannot be verified., you can remove the quarantine attribute by running:

xattr -dr com.apple.quarantine path/to/prebuilt/pspdev

Local package builds

The toolchain (binutils, gcc), the SDK (pspsdk) and the host tools are built locally. However, the provided packages (psp-packages) are installed via psp-pacman (or a similar mechanism if not available), which fetches packages from GitHub releases. If you wish to build these packages locally, you might define the variable LOCAL_PACKAGE_BUILD which will force pacman to build the packages from source instead of downloading them:

LOCAL_PACKAGE_BUILD=1 ./build-all.sh

This is particularly useful if you are testing changes in the toolchain (i.e. gcc or binutils) and want to test your changes end to end. It can also be useful if you want a hermetic build and don't want to use any of the provided binaries.

Thanks

More Repositories

1

pspsdk

An open-source SDK for PSP homebrew development.
C
802
star
2

psptoolchain

A script to automatically build an open-source toolchain for PSP homebrew development.
Shell
372
star
3

psp-ports

A collection of open source software ported to the PSP.
C
101
star
4

prxtool

A simple tool to manipulate Sony PSP(tm) PRX files
C++
65
star
5

psplinkusb

General purpose homebrew/debugging toolkit for PSP
C
62
star
6

psplibraries

A script to automatically build open-source libraries for PSP homebrew development.
Shell
47
star
7

pspdev-docker

Automatically build a docker image with the pspdev toolchain ready to be used for homebrew development.
Dockerfile
35
star
8

psp-ghidra-scripts

Scripts for use with the Ghidra Reverse Engineering Suite
Python
31
star
9

pspgl

OpenGL libraries for PSP
C
21
star
10

psp-packages

JavaScript
18
star
11

psp-pacman

Package manager for ported libraries
Shell
12
star
12

psptoolchain-allegrex

This program will automatically build and install an Allegrex compiler which is used in the creation of homebrew software for the Sony PlayStation® Portable videogame system.
Shell
10
star
13

vfpu-docs

C
8
star
14

newlib

A fork of newlib for the PSP.
C
7
star
15

gcc

A port of gcc to the PSP.
5
star
16

clang-psp

New toolchain approach for PSP
CMake
5
star
17

pspdev.github.io

The pspdev GitHub organization portal
C
4
star
18

SDL_gfx

SDL2_gfx and SDL_gfx with PSP specific patches
3
star
19

MediaEngine

PSP MediaEngine Plugin
C
2
star
20

gdb

The GNU debugger for PSP
C
2
star
21

psptoolchain-extra

A set of tools needed before compiling psp-packages
Shell
2
star
22

libintraFont

C
2
star
23

freetype2

freetype2 with PSP specific patches
C
2
star
24

insight

A fork of insight to the PSP.
C
1
star
25

kubridge

KUBridge Library
C
1
star