Skip to main content
Shed Skin requires Python and several system libraries to compile and run generated programs. This guide covers installation on all major platforms.

Choose your platform

Linux

Ubuntu, Debian, Fedora, and other distributions

macOS

Install via Homebrew or build from source

Windows

Using Visual Studio Build Tools

Linux

1

Install from distribution (recommended)

On Ubuntu/Debian, install Shed Skin directly from the package manager:
sudo apt-get install shedskin
This installs Shed Skin and most dependencies automatically.
2

Install dependencies

To compile and run programs generated by Shed Skin, you need:
  • g++ - The GNU C++ compiler
  • libpcre2-dev - PCRE2 library for regular expressions
  • python-all-dev - Python development headers
  • libgc-dev - Boehm garbage collector
Install all dependencies at once:
Ubuntu/Debian
sudo apt-get install g++ libpcre2-dev python-all-dev libgc-dev
Fedora
sudo dnf install gcc-c++ pcre2-devel python-devel gc-devel
The package names may vary slightly between distributions. Use your distribution’s package search to find the correct names.
3

Install from source (alternative)

If Shed Skin isn’t available in your package manager, install from source:
# Install pip if not already installed
sudo apt-get install python3-pip

# Install Shed Skin
pip install shedskin
Or download and install from the tarball:
# Download tarball from GitHub releases
wget https://github.com/shedskin/shedskin/archive/refs/tags/latest.tar.gz
tar -xzf latest.tar.gz
cd shedskin-*
sudo python setup.py install
4

Verify installation

Check that Shed Skin is installed correctly:
shedskin --help
You should see the Shed Skin command-line help.

Building dependencies from source

If the required libraries aren’t available via your package manager, you can build them from source.
Download version 7.2alpha6 or later from hboehm.info/gc:
wget https://www.hboehm.info/gc/gc_source/gc-7.2alpha6.tar.gz
tar -xzf gc-7.2alpha6.tar.gz
cd gc-7.2alpha6

./configure --prefix=/usr/local \
  --enable-threads=posix \
  --enable-cplusplus \
  --enable-thread-local-alloc \
  --enable-large-config

make
make check
sudo make install
The configuration flags enable important features:
  • --enable-threads=posix - Thread support
  • --enable-cplusplus - C++ bindings
  • --enable-thread-local-alloc - Thread-local allocation for performance
  • --enable-large-config - Support for large heaps
Download version 10.44 or later from pcre.org:
wget https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.44/pcre2-10.44.tar.gz
tar -xzf pcre2-10.44.tar.gz
cd pcre2-10.44

./configure --prefix=/usr/local
make
sudo make install

macOS

1

Install Xcode Command Line Tools

First, ensure you have the Xcode Command Line Tools (includes the C++ compiler):
xcode-select --install
2

Install dependencies with Homebrew

Use Homebrew to install the required libraries:
# Install Homebrew if not already installed
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install dependencies
brew install bdw-gc pcre2 python
bdw-gc is the Boehm garbage collector package on Homebrew.
3

Install Shed Skin

Install Shed Skin using pip:
pip3 install shedskin
Or from the tarball:
# Download from GitHub
curl -L -O https://github.com/shedskin/shedskin/archive/refs/tags/latest.tar.gz
tar -xzf latest.tar.gz
cd shedskin-*
sudo python3 setup.py install
4

Verify installation

Confirm Shed Skin is working:
shedskin --help
If you prefer to build from source rather than using Homebrew, follow the same instructions as Linux:Boehm GC:
./configure --prefix=/usr/local \
  --enable-threads=posix \
  --enable-cplusplus \
  --enable-thread-local-alloc \
  --enable-large-config
make
make check
sudo make install
PCRE2:
./configure --prefix=/usr/local
make
sudo make install

Windows

Windows installation requires Visual Studio Build Tools and uses CMake with Conan for dependency management.
1

Install Visual Studio Build Tools

Download and install Visual Studio Build Tools.During installation, make sure to enable:
  • Desktop development with C++
  • CMake tools for Windows (under Individual Components)
You need the full Build Tools with C++ support, not just the basic tools.
2

Install CMake

Download and install CMake (3.15 or later).During installation, choose to add CMake to your system PATH.
3

Install Conan

Install Conan 1.62.0 using pip:
pip install "conan==1.62.0"
Shed Skin currently requires Conan 1.x, not Conan 2.x.
4

Install Shed Skin

Install Shed Skin using pip:
pip install shedskin
5

Verify installation

Open a “Visual Studio Developer Command Prompt” (not regular Command Prompt) and run:
shedskin --help
Always use the Visual Studio Developer Command Prompt when working with Shed Skin on Windows, as it sets up the compiler environment.

Windows-specific notes

On Windows, use the --conan flag when building:
shedskin build --conan test
This tells Shed Skin to use Conan to automatically download and build dependencies (Boehm GC and PCRE2). Without this flag, you’d need to manually install these libraries.
On Windows, compiled programs are placed in build/Debug/ or build/Release/ instead of just build/:
# Debug build (default)
build\Debug\test.exe

# Release build
shedskin build --build-type Release test
build\Release\test.exe
If you see “nmake is not recognized”, you’re not in a Developer Command Prompt. Open the Start menu and search for “Developer Command Prompt for VS”.

Verify your installation

Test your installation with a simple program:
1

Create test.py

test.py
print('hello, world!')
2

Compile it

shedskin build test
3

Run it

build/test
If you see hello, world!, your installation is working correctly!

Distributing compiled programs

When distributing compiled programs to other systems, include the required runtime libraries.

Linux/macOS

Your binary depends on libgc and libpcre2-8. To check dependencies:
ldd build/test
You’ll see something like:
libgc.so.1 => /usr/lib/libgc.so.1
libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0
If these libraries aren’t available on the target system, copy them alongside your binary:
# Copy libraries
cp /usr/lib/libgc.so.1 build/
cp /lib/x86_64-linux-gnu/libpcre2-8.so.0 build/

# Run with library path
LD_LIBRARY_PATH=build ./build/test
Both systems must be 32-bit or both 64-bit for this to work.

Windows

Windows executables built with --conan are statically linked and should run without additional dependencies.

Next steps

Quickstart

Compile your first program

Command-line options

Learn about build flags and options

Troubleshooting

Solve common installation issues

Examples

Browse example programs

Getting help

If you encounter issues: