Skip to content

Latest commit

 

History

History
93 lines (60 loc) · 4.06 KB

INSTALL.md

File metadata and controls

93 lines (60 loc) · 4.06 KB

Installing Pony

Prebuilt Pony binaries are available on a number of platforms. They are built using a very generic CPU instruction set and as such, will not provide maximum performance. If you need to get the best performance possible from your Pony program, we strongly recommend building from source.

All prebuilt releases are currently AMD64 only. If you want to install on different CPU architecture, you'll need to build from source.

Prebuilt Pony installations will use clang as the default C compiler and clang++ as the default C++ compiler. If you prefer to use different compilers, such as gcc and g++, these defaults can be overridden by setting the $CC and $CXX environment variables to your compiler of choice.

FreeBSD 13.0

Prebuilt FreeBSD 13.0 packages are available via ponyup.

ponyup default freebsd-13.0
ponyup update ponyc release

Linux

Prebuilt Linux packages are available via ponyup for Glibc and musl libc based Linux distribution. You can install nightly builds as well as official releases using ponyup.

Select your Linux platform

ponyup default PLATFORM

where PLATFORM is from the table below

Distribution PLATFORM String
Alpine musl
Linux Mint 19.3 ubuntu18.04
Rocky 8 rocky8
Ubuntu 18.04 ubuntu18.04
Ubuntu 20.04 ubuntu20.04
Ubuntu 22.04 ubuntu22.04

N.B. If you platform isn't listed, skip to the next section and ponyup will install, as appropriate a Glibc or musl libc build of ponyc.

Install the latest release

ponyup update ponyc release

Additional requirements

All ponyc Linux installations need to have a C compiler such as clang installed. Compilers other than clang might work, but clang is the officially supported C compiler. The following distributions have additional requirements:

Distribution Requires
Alpine libexecinfo
CentOS libatomic
Fedora libatomic
Rocky libatomic
Void libatomic libatomic-devel

Troubleshooting Glibc compatibility

Most Linux distributions are based on Glibc and all software for them must use the same version of Glibc. You might see an error like the following when trying to use ponyc:

ponyc: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by ponyc)

If you get that error, it means that the Glibc we compiled ponyc with isn't compatible with your distribution. If your distribution is a long term support release, please open an issue and we'll work towards adding prebuilt images for your distribution. Otherwise, you'll have to build ponyc from source.

macOS

Prebuilt macOS packages for Apple Silicon are available via ponyup. You can also install nightly builds using ponyup.

To install the most recent ponyc on macOS:

ponyup update ponyc release

Windows

Windows users will need to install:

  • Visual Studio 2022 or 2019 (available here) or the Microsoft C++ Build Tools (available here).
    • Install the Desktop Development with C++ workload, along with the latest Windows 10 SDK (10.x.x.x) for Desktop individual component.

Once you have installed the prerequisites, you can get prebuilt release or nightly builds via ponyup. To install the most recent ponyc on Windows:

ponyup update ponyc release

You can also download the latest ponyc release from Cloudsmith. Unzip the release file in a convenient location, and you will find ponyc.exe in the bin directory. Following extraction, to make ponyc.exe globally available, add it to your PATH either by using Advanced System Settings->Environment Variables to extend PATH or by using the setx command, e.g. setx PATH "%PATH%;<directory you unzipped to>\bin"