Skip to content

Compiling

David Heidelberg edited this page Jun 21, 2022 · 4 revisions

Gallium Nine Standalone requires the Meson Build system and winegcc to build binaries usable by WINE.

The build dependencies are:

  • WINE tools (winegcc, wrc, winebuild)
  • libwine
  • d3dadapter9
  • libx11
  • libx11-xcb
  • libxcb
  • libxcb-dri3
  • libxcb-present
  • libxcb-xfixes

And optionally, for the DRI2 fallback:

  • libxcb-dri2
  • libgl
  • libegl

Most DirectX 9 games are 32bit, for which you require 32bit binaries. For the few 64bit DirectX 9 games 64bit binaries are required.

To get started, it is recommended to use the script release.sh, which will build for both architectures (so the build dependencies for both are required). It creates a tarball of the binaries as well as the runtime script nine-install.sh to set up a WINE prefix.

release.sh accepts the following options to control the build:

./release.sh [OPTION] [-- MESONARGS]
	-o FILE		create release as FILE
	-h		print this help
	-- MESONARGS	pass MESONARGS to meson

For project specific meson options, see meson_options.txt.

Example: ./release.sh -o $HOME/gallium-nine.standalone.tar.gz -- -Ddri2=true

WINE

winegcc from WINE earlier than 4.0 is affected by bugs which make compilation quite painful. If your distro doesn't offer a fixed version, it's recommended to use the WineHQ packages instead.

Clone this wiki locally