gimp/build/windows/jhbuild
Michal 82e59a951d Use list comprehensions
https://docs.python.org/3/tutorial/datastructures.html#list-comprehensions
2018-09-29 20:25:40 +00:00
..
patches Bug 795161 - Misc. typo fixes in source comments and doxygen 2018-04-18 21:06:57 +02:00
.gitignore build/win: Add a jhbuild project for making windows binaries. 2013-08-28 16:31:08 -04:00
README.md build/win: We now need libxml-simple-perl on the host system. 2014-05-10 10:58:48 -04:00
build build/win: Add a jhbuild project for making windows binaries. 2013-08-28 16:31:08 -04:00
build.jhbuildrc Bug 795161 - Misc. typo fixes in source comments and doxygen 2018-04-18 21:06:57 +02:00
checkversions.sh build/win: Improvements to checkversions.sh 2014-05-18 11:40:09 -04:00
clean build/win: Remove all extra files while cleaning. 2014-08-09 15:55:52 -04:00
compresslibs.moduleset build/win: Upgrade dependencies. 2017-02-04 16:29:36 -05:00
fake.mk build/win: Add a jhbuild project for making windows binaries. 2013-08-28 16:31:08 -04:00
gdb.moduleset build/win: Upgrade gdb to 7.9.1 2015-08-12 14:23:43 -04:00
gimp.moduleset Update various places with old git repository URIs. 2018-05-27 04:19:18 +02:00
glib.moduleset build/win: Upgrade dependencies. 2017-02-04 16:29:36 -05:00
gtk+.moduleset build/win: Upgrade dependencies. 2017-02-04 16:29:36 -05:00
imglibs.moduleset build/win: Upgrade dependencies. 2017-02-04 16:29:36 -05:00
makepkgs.py Use list comprehensions 2018-09-29 20:25:40 +00:00
misclibs.moduleset build/win: Upgrade dependencies. 2017-02-04 16:29:36 -05:00
mkarchive build/win: Store mkarchive's temporary archive in /tmp 2015-08-10 22:53:06 -04:00
split-build build/win: Add support for building 64-bit libs in jhbuild. 2014-07-30 16:34:42 -04:00
targetisunchanged build/win: Add a jhbuild project for making windows binaries. 2013-08-28 16:31:08 -04:00
toolchain.cmake build/win: Upgrade exiv2 to 0.24 2014-02-05 14:07:40 -05:00
webkitgtk.moduleset build/win: Upgrade webkitgtk to 2.0.4 2014-05-31 23:38:57 -04:00
win32.cache build/win: Add a jhbuild project for making windows binaries. 2013-08-28 16:31:08 -04:00

README.md

Doing a Simple Build

To begin with, you need to install jhbuild, mingw-w64, and a few other build-related dependencies.

If you're using debian, install these packages:

sudo apt-get install build-essential mingw-w64 git jhbuild automake autoconf libtool libgtk2.0-dev ragel intltool bison flex gperf gtk-doc-tools nasm ruby cmake libxml-simple-perl

From there, in theory, you can simply clone this repo, cd into it, and run:

./build

That will build the development version of the gimp.

If you'd rather build the stable version of the gimp, run this instead:

MODULE=gimp-stable ./build

If you'd like to build with debigging information, run:

BUILD_FLAVOUR=dbg ./build

What if it doesn't work out of the box?

I've actually never had that work out of the box, so chances are you'll need to adjust things a bit.

If you get an error along the lines of no: command not found while building GTK+, then that means gdk-pixbuf-csource can't be found. You can fix this by installing your distro's GTK+ 2 development package. (libgtk2.0-dev on debian)

If you get an error that looks like this while building cairo:

In file included from getline.c:31:0:
cairo-missing.h:45:17: error: conflicting types for 'ssize_t'
In file included from /usr/lib/gcc/i486-mingw32/4.7.0/../../../../i486-mingw32/include/stdio.h:534:0,
	             from cairo-missing.h:36,
	             from getline.c:31:
/usr/lib/gcc/i486-mingw32/4.7.0/../../../../i486-mingw32/include/sys/types.h:118:18: note: previous declaration of 'ssize_t' was here
In file included from strndup.c:31:0:
cairo-missing.h:45:17: error: conflicting types for 'ssize_t'
In file included from /usr/lib/gcc/i486-mingw32/4.7.0/../../../../i486-mingw32/include/stdio.h:534:0,
	             from cairo-missing.h:36,
	             from strndup.c:31:
/usr/lib/gcc/i486-mingw32/4.7.0/../../../../i486-mingw32/include/sys/types.h:118:18: note: previous declaration of 'ssize_t' was here

Then you need to add -D_SSIZE_T_DEFINED to your MINGW_CFLAGS, like this:

export MINGW_CFLAGS="-D_SSIZE_T_DEFINED"

Other Scripts

There are a few other scripts included in this repo:

  • ./clean will remove all build artifacts (but leave the downloaded tarballs), leaving you with a clean setup.
  • ./mkarchive will create self extracting archives of the gimp.
  • ./split-build will do a special build where it builds both gimp-dev and gimp-stable but the two builds share the same dependencies. The directories then needs to be merged using ./mkarchive.