Build instructions for linux, unify boost lib list
Boost Libraries – Trimmed Down for shadPS4
This is a subset of Boost v1.82.0 generated using the bcp tool.
To see which Boost modules are included, check the boost_libs.txt file.
This repository is intended for use with the shadPS4 emulator.
Updating This Repo
To update the Boost version or add a new library, follow these steps:
You will have to use PowerShell if you are on Windows.
-
Download Boost and extract the package.
You can clone the Boost repo andcdinto it:git clone https://github.com/boostorg/boost cd boost -
Checkout a specific Boost version and initialize submodules.
For Boost 1.82.0:git checkout boost-1.82.0 git submodule update --init --recursive -
Build the
bcptool:- Windows:
.\ootstrap.bat .\b2 toolscp - Linux/macOS:
./bootstrap.sh ./b2 tools/bcp
- Windows:
-
Store the Boost directory in a variable:
- Windows:
$boost_dir = $pwd - Linux/macOS:
export boost_dir=$(pwd)
- Windows:
-
Add
bcpto your PATH:
(The correct output path is printed byb2during the build. The following are just examples—do not include thebcpexecutable name, only the directory containing it.)- Windows:
$env:Path += ";$boost_dir\bin.v2\tools\bcp\msvc-14.3\release\link-static\threading-multi" - Linux/macOS:
export PATH="$boost_dir/bin.v2/tools/bcp/gcc-15/release/link-static:$PATH"
- Windows:
-
Change to this repository’s directory (typically
shadPS4/ext-boost).
Make sure you stay in the same terminal session so you don’t lose your environment variables. -
Remove the existing Boost
boostandlibsdirectories.
(Only necessary when upgrading Boost, in case the new version removes any files.) -
If updating Boost, update the Boost version in this README to keep things consistent.
-
Edit
boost_libs.txtto add or remove libraries/headers as needed. -
Run the build script to create the new trimmed-down Boost distribution:
- Windows:
.\build.cmd $boost_dir - Linux/macOS:
./build.sh $boost_dir
- Windows:
-
You may need to update
CMakeLists.txtto adjust include directories. -
Add/remove all changed files in git and commit your changes.