Building the Ecere SDK on Linux/UNIX
We invite you to contribute Ecere packaging for your distribution of choice, or even propose yourself as a maintainer.
We take care of maintaining the
Debian packages.
See the source code links in the box in the top-right section of this page for obtaining the source.
Dependencies
You will also need the development packages (headers and linking libraries) for the following dependencies:
Building and Installing
The prefix defaults to
/usr. If you wish to install somewhere else, pass e.g.
prefix=/usr/local to make.
If you wish to build in one place and install to another directory (e.g. as part of a packaging process), you can use e.g. DESTDIR=/tmp/ecere_package/
Once your dependencies are set up, building and installing Ecere should be as simple as:
You can launch the Ecere IDE with the command
ide.
You will find desktop icons and entries under
share/.
Removing the need for some dependencies
Should any of these dependencies prove difficult to obtain or install, it is possible to tweak the makefiles to build without them.
A missing UPX will just be ignored.
OpenGL can be disabled with DISABLE_GL=y.
For SQLite/FFI, simply dropping the EDA rules will remove those dependencies.
For EcereAudio, you can specify ECERE_AUDIO=n to build without.
For NCurses, X11 (if OpenGL is disabled as well) and bitmap formats, simply excluding the file from the Makefile should work. (Embedded graphics will no longer work if you disable PNG)
Adding -DECERE_NOTRUETYPE and -DECERE_NOFONTCONFIG to CPPFLAGS should remove the need for FontConfig and FreeType, but you will lose text rendering.
Only zlib is absolutely required by libecere (to support Ecere archives and resources, which
could be disabled to build without), and none of them is required to build libecereCOM (the barebone eC runtime library).
Although it is recommended you use the libraries from your distribution, should they be useful to you, you will find versions of zlib, freetype, libungif, libjpeg, libpng, sqlite and libffi in the deps/ folder.
An old version of
HarfBuzz is also included in ecere/src and always statically linked as part of Ecere unless you define ECERE_NOTRUETYPE.