The wiki page for emulators/i386-wine(-devel|-compholio), the port for delivering a 32-bit Wine (for running 32-bit Microsoft Windows applications) capable of installing and running under FreeBSD/amd64.

This port can only be built in an i386 environment as the FreeBSD Port's Collection does not support cross compiling.


Packages for i386-wine(-devel|-compholio) are provided for all supported FreeBSD releases and FreeBSD-current via the normal FreeBSD Ports repository.

You do need a system installed with lib32 libraries. If unsure, test if /libexec/ is present on your system. If not you can fetch the set "lib32.txz" and install it the following way:

# tar -xpf /path/to/the/downloaded/lib32.txz -C /

To install wine do one of the following:

# pkg install i386-wine

for the stable version of wine,

# pkg install i386-wine-devel

for the development version of wine, or

# pkg install i386-wine-compholio

for the staging version of wine.

Alternatively you can install directly from the Ports Collection under emulators/i386-wine(-devel|-compholio) however both approaches uses the same precompiled binaries. For example:

# cd /usr/ports/emulators/i386-wine-devel
# make install

To update the installed wine:

# pkg upgrade

Port options

The precompiled packages are compiled using the following options:




CUPS printing system support


SSL/TLS support via GnuTLS


HAL (Hardware Abstraction Layer) support


Use libxslt (only used by msxml3.dll)


OpenAL support


X11 (graphics) support


To build the i386-Wine port an i386 environment is required. If such an environment is not available then it can be created from FreeBSD/amd64:

# cd /usr/src
# make buildworld TARGET=i386
# make installworld TARGET=i386 DESTDIR=/compat/i386
# make distribution TARGET=i386 DESTDIR=/compat/i386
# mkdir /compat/i386/usr/ports
# mount -t devfs devfs /compat/i386/dev
# mount -t nullfs /usr/ports /compat/i386/usr/ports

When chrooting to /compat/i386 do these additional setups:

# chroot /compat/i386
# setenv MACHINE i386
# setenv UNAME_m i386
# setenv UNAME_p i386
# service ldconfig start

Lastly, the package can be created:

# cd /usr/ports/emulators/i386-wine-devel
# make package

The package is available at

# echo /compat/i386/$(make -V PKGFILE)


i386-Wine (last edited 2015-10-26 10:33:22 by BaptisteDaroussin)