Cygwin installation notes
This is doc/INSTALL.Cygwin, which contains Cygwin platform specific
Freeciv installation information.
A translated version of this file may be in language specific
subdirectories of doc/.
See also the generic installation notes in INSTALL.
Cygwin is a free Unix variant for MS Windows operating systems.
It comes with an X server, Xorg.
To install Freeciv for Cygwin:
a) Install or update your Cygwin by downloading and running installer
In addition to default install, install at least following packages
to build freeciv
(packages to be installed as dependencies of ones in the list
are not listed):
- gcc-g++ (section Development)
- pkg-config (Development)
- make (Development)
- libiconv-devel (Libs)
- libcurl-devel (Libs)
- zlib-devel (Libs)
Install development packages for the guis you want to compile, one or more of
- libgtk2.0-devel (Libs)
- libgtk3-devel (Libs)
- libQt5Core-devel (Libs) + libQt5Gui-devel (Libs)
For additional functionality install also:
- libreadline-devel (Libs) (for server command history & completion)
- gettext-devel (Development) (for native language support)
- libSDL2_mixer-devel (Libs) (for client audio support)
To get and build freeciv development version directly from version control,
you need also
- git (Development)
- automake1.15 (Development)
- libtool (Development)
To run freeciv client, you need to install also
- xlaunch (X11)
- fontconfig (X11)
b) Get a Freeciv source tree (the doc/ directory this INSTALL.Cygwin is in,
is a subdirectory of the source tree's root directory).
Put it in a temporary place like /tmp.
./configure --enable-client=<gui> [any other options e.g. --prefix=...]
where <gui> is either "gtk2", "gtk3.22", "qt", or list like "gtk2,gtk3.22,qt".
If you didn't install gettext-devel, you have to give also configure option
--disable-nls to disable Native Language Support. If you're building
Qt-client, you also need option "MOCCMD=/usr/bin/moc-qt5"
If you are building directly from version control, and not from
tarball that has some files, including ./configure, pregenerated,
you need to run ./autogen.sh instead of ./configure. Use same options
as you would for directly running ./configure.
If you get messages of missing or outdated components, install them.
c) Compile and install Freeciv:
You should now have bin/freeciv-server.exe and bin/freeciv-<gui>.exe in the
directory you installed Freeciv into (/usr/local by default).
If 'make install' succeeds, the source code tree can be removed.
d) Test the results:
/path/to/freeciv-server.exe [any additional options]
will start the server, but you only need it for private games.
To start the client, you need to run the X server (this can be
done by typing 'xlaunch'), then into a terminal type
/path/to/freeciv-<gui>.exe [any additional options]
More details on using server and client are in doc/README.