gchauvet/gobo
The Gobo Eiffel Project provides the Eiffel community with free and portable Eiffel tools and libraries.
Gobo Eiffel Project
One of the main concerns of the Gobo Eiffel Project is to provide
the Eiffel community with Eiffel tools and libraries that are
free and portable
across various Eiffel compilers available on the market.
That way, you can still use your favorite Eiffel compiler while taking
advantage of the goodies included in Gobo Eiffel.
The software included in this package is copyrighted freeware distributed
under the terms and conditions of the MIT License as specified in
License file.
Gobo Eiffel is a multi-developer open-source project whose development
is hosted at
Github
while the official site (for stable releases) is located at
gobosoft.com. This package also contains files
from the Boehm GC project which is also
released under a MIT-style license,
and is bundled with the Zig toolchain which is also
released under a MIT-style license.
Gobo Eiffel already consists of nineteen Eiffel libraries:
- Gobo Eiffel Argument Library
- Gobo Eiffel Kernel Library
- Gobo Eiffel Language Server Protocol Library
- Gobo Eiffel Lexical Library
- Gobo Eiffel Math Library
- Gobo Eiffel Parse Library
- Gobo Eiffel Pattern Library
- Gobo Eiffel Regexp Library
- Gobo Eiffel Storable Library
- Gobo Eiffel String Library
- Gobo Eiffel Structure Library
- Gobo Eiffel Test Library
- Gobo Eiffel Thread Library
- Gobo Eiffel Time Library
- Gobo Eiffel Tools Library
- Gobo Eiffel Utility Library
- Gobo Eiffel XML Library
- Gobo Eiffel XPath Library
- Gobo Eiffel XSLT Library
and thirteen utilities:
- Gobo Eiffel Ant (geant)
- Gobo Eiffel Compiler (gec)
- Gobo Eiffel C Compilation (gecc)
- Gobo Eiffel Cop (gecop)
- Gobo Eiffel Doc (gedoc)
- Gobo Eiffel Image (geimage)
- Gobo Eiffel Language Server (gelsp)
- Gobo Eiffel Lex (gelex)
- Gobo Eiffel Lint (gelint)
- Gobo Eiffel Preprocessor (gepp)
- Gobo Eiffel Test (getest)
- Gobo Eiffel XSLT Processor (gexslt)
- Gobo Eiffel Yacc (geyacc)
Note that these utilities are not needed if you just want to use the
library classes provided in this package.
Eiffel compilers
The supported Eiffel compilers, in alphabetical order, are:
- Gobo Eiffel Compiler (gec) 26.01.11
- ISE Eiffel 25.02.9.8732 (Classic and .NET)
For more details about the supported Eiffel compilers, please see the file
Release notes.
This software might work with other Eiffel compilers and/or other compiler
versions, however no test has been made yet.
To have a better understanding of the way this software has been designed
and implemented, you can also have a look at
portability issues.
Platforms
The software provided in this distribution should work on any platform
where supported Eiffel compilers are available. However this software
has only been tested under Windows 11, Linux Ubuntu and MacOS.
Since most Eiffel compilers use the notation $NAME for environment
variables in their ECF files (or equivalent), this convention has been
used instead of the Windowish %NAME%. Likewise, the directory separator
used throughout this distribution is /, following Unix/Linux convention
instead of the Windows \ separator.
To install this package, please follow the instructions below:
On Windows
- Download
the packagegobo-windows-{x86_64,arm64}-*.7z(choose
x86_64orarm64depending on your architecture). - Copy the files to a directory of your choice on your disk,
and (optional) set the environment variable%GOBO%to
that directory, known as the distribution directory. - Put the directory
%GOBO%\binin yourPATH.
On Linux
- Download
the packagegobo-linux-{x86_64,arm64}-*.tar.xz(choose
x86_64orarm64depending on your architecture). - Copy the files to a directory of your choice on your disk,
and (optional) set the environment variable$GOBOto
that directory, known as the distribution directory. - Put the directory
$GOBO/binin yourPATH.
On MacOS
- Download
the packagegobo-macos-{x86_64,arm64}-*.tar.xz(choose
x86_64orarm64depending on your architecture). - Copy the files to a directory of your choice on your disk,
and (optional) set the environment variable$GOBOto
that directory, known as the distribution directory. - Put the directory
$GOBO/binin yourPATH.
On other platforms
- Download
the packagegobo-*.tar.gz(Source code), or check-out the
files from the Git repository. - Copy the files to a directory of your choice on your disk and
(optional) set the environment variable$GOBOto that directory,
known as the distribution directory. - Put the directory
$GOBO/binin yourPATH. - (optional) Download the Zig toochain,
copy the files to the directory$GOBO/tool/gec/backend/c/zig(thezig
executable should be at the root of this directory), and run the command:$GOBO/.cicd/patch_zig.ps1 $GOBO/tool/gec/backend/c/zig
- To build the tools (e.g.
gec,geyacc, ...), execute the script:where$GOBO/bin/install.sh <c_compiler>
<c_compiler>iszig(if installed above) or a C compiler
installed on your computer (for example usegccfor GNU C compiler).
Feedback
A list of the known defects along with eventual bug fixes or
workarounds is available in the
issue tracker
on GitHub (an older
bug tracker
is available on SourceForge). If you find a bug which does not
appear in this list yet, please
report it.
We will try to provide a bug fix as soon as possible
(usually within one or two days).
There is a
mailing list
(hosted at SourceForge) for discussions about the features under
development in the
Git repository
on GitHub. You can subscribe and take part to the discussions or ask
your questions there.
A nightly build
with bug fixes and features under development is available on GitHub, next to the other
releases.
The official releases are also available on
SourceForge
for those of you who prefer to use this mirror.
Although the license allows you to do pretty much whatever you want
with this software, we would be grateful to get your feedback,
bug reports and/or bug fixes, improvements, etc. so that others
could benefit from your work and ideas as well.
We would also be interested in hearing about your projects and
how easy (or difficult) it was to adapt this software for your
specific needs. Thank you in advance.
You are also welcome to take part in the development of the
Gobo Eiffel Project. Some
developer guidelines
are available to help you make the first steps.
Authors
Copyright (c) 1997-2026, Eric Bezault and others
mailto:ericb@gobosoft.com
https://www.gobosoft.com