Aporia is an IDE for the Nimrod programming language. Aporia uses GTK as the default toolkit, and the gtksourceview for the text editor component.
To compile Aporia you need the latest version of the Nimrod compiler, preferably the unstable release from github. Aporia sometimes relies on bug fixes which have not yet made it to a stable release.
You can build it by running
nimrod c aporia or by using babel
You can also quickly install it using babel without the need to clone this repo
yourself, just execute
babel install aporia#head.
If you do not want to get the nimrod compiler you can still compile Aporia from
the generated C sources, it's as simple as executing the
build.bat on Windows). You can then also use
install.sh to install
If you already have GTK+ on your system, you don't need to do anything. Just make sure GTK+ is in your PATH.
If you don't have GTK+ installed then you need to install it. You can get the latest version from here. Make sure that the installer adds GTK+ to the PATH.
The GtkSourceView doesn't have an installer, however binaries are available
(win64). Just pick
the latest version and download the archive then copy the files/folders
in the archive into the 'bin' directory in gtk's directory
GtkSourceView depends on libxml2-2. This should be downloaded from
And the contents of it should be copied the same 'bin' directory as GtkSourceView above.
The zip you are looking for is usually called
The dll for this can be found in Nimrod's repo, in the
"dist" directory. Just
copy it into aporia's directory or somewhere into your PATH.
Use your package manager to install the dependencies.
Since Aporia uses gtk, and gtk is not easy to compile natively under MacOSX (yet), your best bet is to install Macports and then install the gtk libraries through the following commands:
port install gtksourceview2 libiconv
That will likely install most, if not all dependencies required by Aporia. Now, you may also need to run the following command to let the OS find the path to the macports libraries when invoking aporia:
If running now
aporia tells you about a missing dynamic library,
dependencies might have changed and you could need to
port install another
package (tell us this is broken creating an
issue and we will update the