PowerShell/docs/building/macos.md
2019-11-24 17:41:53 +05: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.13+.

Environment

You will want Homebrew or MacPorts, 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 or port 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/netcoreapp3.0/osx-x64/publish/pwsh.