Skip to content
Alex Maitland edited this page Jul 28, 2022 · 10 revisions

Building cef-binary Nuget packages

Builds cef-binary packages either from the official spotify binaries or from locally compiled CEF binaries.

Requirements

  • cmake
  • 7Zip
  • Visual Studio 2019 Pro/Community
  • Powershell

Latest Version (Automated)

For build branch 2704 and newer. Using releases from Spotify CEF Automated Build server

The latest version of the build.ps1 powershell script will download the specified CEF Binary revision and generate the packages automatically.

  • Git clone the cef-binary repository
  • Execute build.ps1 (usage examples below)
  • Nuget packages generated in nuget folder
# Build with default settings this will generate VS2019 builds of the libcef_wrapper and generate the nuget packages
.\build.ps1

# Build the default version targeting only VS2019 and then generate the nuget packages
.\build.ps1 -Target vs2019
.\build.ps1 -Target nupkg-only

# Build version 3.2924.1538.gbfdeccd with VS2019
.\build.ps1 -Target vs2019 -CefVersion 3.2924.1538.gbfdeccd
.\build.ps1 -Target nupkg-only -CefVersion 3.2924.1538.gbfdeccd

# Build version 3.2924.1538.gbfdeccd with VS2019
.\build.ps1 -Target vs2019 -CefVersion 3.2924.1538.gbfdeccd
.\build.ps1 -Target nupkg-only -CefVersion 3.2924.1538.gbfdeccd

# Build version 3.2924.1538.gbfdeccd with VS2019 using your locally compiled CEF version
.\build.ps1 -Target vs2015 -DownloadBinary local -CefVersion 3.2924.1538.gbfdeccd -CefBinaryDir "../../cefsource/chromium/src/cef/binary_distrib/"
.\build.ps1 -Target nupkg-only -DownloadBinary none -CefVersion 3.2924.1538.gbfdeccd

# Build a local binary using vs 2019 only with the cef_binary_3.3239.1723.g071d1c1_windows64.zip and 32 bit files in /code/binaries, using the zip extension, only building the release version, autodetecting the version string from the filename.
./build.ps1 -DownloadBinary local -CefBinaryDir /code/binaries/ -CefVersion auto -NoDebugBuild -Extension zip -Target vs2019;
./build.ps1 -DownloadBinary local -CefBinaryDir /code/binaries/ -CefVersion auto -NoDebugBuild -Extension zip -Target nupkg-only;

Build Script Arguments

For the latest options reading the powershell file directly is best.

  • $Target - This specifies what compiler to use (vs2019->vs2022) if just compiling, is it should do the full build (nupkg the default), or just to generate the packages (nupkg-only)
  • $DownloadBinary - download to download from the official Spotify builds or local to use a local build
  • $CefBinaryDir - If performing a local build where are the source binaries located
  • $CefVersion - Version to download (or local version to use). If using a local version this can be set to auto and it will determine the version for the binary archive file in the CefBinaryDir
  • $Extension - Extension of the binaries. tar.bz2 for the official Spotify builds (default), zip default windows local build for CEF extension, 7z (option for CEF in newer branches)
  • $NoDebugBuild - (Flag) Do not build the debug package files for cef-binary only do release

Older Versions (manual)

Older releases were sourced from cefbuilds.com - this site is no longer available and these instructions are only left here as a reference.

Important You'll need to use an older version of the build.ps1 script to build the 2623 branch and older

  • Git clone the cef-binary repository
  • Checkout the specific commit
  • Download both 32bit and 64bit versions for the branch your interested in e.g. 3.2623.1401
  • Extract the 32bit version into <path-to-cef-binary>\cef_binary_3.y.z_windows32
  • Extract the 64bit version into <path-to-cef-binary>\cef_binary_3.y.z_windows64
  • Ensure CMake is in the path
  • Edit build.ps1 and update the CEF version and CEF package version based on the CEF version you downloaded.
  • Open powershell
  • Execute build.ps1