PowerShell/docs/building/macos.md
xtqqczze 863528881f Use https in URLs where available (#8622)
Use https in URLS across the repository where the domain serves content by https.
2019-01-24 12:50:11 -08:00

1.5 KiB

Build PowerShell on macOS

This guide supplements the Linux instructions, as building on macOS is almost identical.

.NET Core 2.x (and by transitivity, us) only supports macOS 10.12+.

Environment

You will want Homebrew, the missing package manager for macOS. Once installed, follow the same instructions to download and install a self-hosted copy of PowerShell on your macOS machine. From pwsh.exe, run Import-Module ./build.psm1 and use Start-PSBootstrap to install the dependencies.

The Start-PSBootstrap function does the following:

  • Uses brew to install CMake, OpenSSL, and GNU WGet
  • Uninstalls any prior versions of .NET CLI
  • Downloads and installs .NET Core SDK to ~/.dotnet

If you want to use dotnet outside of Start-PSBuild, add ~/.dotnet to your PATH environment variable.

error: Too many open files

Due to a bug in NuGet, the dotnet restore command will fail without the limit increased. Run ulimit -n 2048 to fix this in your session; add it to your shell's profile to fix it permanently.

We cannot do this for you in the build module due to #847.

Build using our module

Start a PowerShell session by running pwsh, and then use Start-PSBuild from the module.

After building, PowerShell will be at ./src/powershell-unix/bin/Debug/netcoreapp2.1/osx-x64/publish/pwsh.