GNU Aris is a logical proof program that provides support for propositional and predicate logic, Boolean algebra, and arithmetical logic in the form of abstract sequences (seqlog). This software is distributed under the GNU General Public License.
Copyright (C) 2012, 2013 Ian Dunn
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.
Check under Releases
for Linux/Windows bundles and AppImages
or visit our website .
Else, to build GNU Aris through source, follow the instructions given below. This should work on Linux, Mac or Windows (by using, for example, the MSYS2 toolchain and its MINGW64 environment):
Clone/Download the repository. For example:
git clone https://github.com/kovzol/aris
You may need to install additional software like cmake
, Qt, ninja
, and of course, you need to have
a working C/C++ compiler toolchain.
Follow the steps:
mkdir build
cd build
cmake ..
You should see something like this:
-- The C compiler identification is GNU 11.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found LibXml2: /usr/lib/x86_64-linux-gnu/libxml2.so (found version "2.9.13")
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2")
-- Checking for module 'gtk+-3.0'
-- Found gtk+-3.0, version 3.24.33
-- Configuring done
-- Generating done
-- Build files have been written to: /home/abc/workspace/aris/build/
Run the command make
. You should see something like this at the end of the process:
[ 88%] Building C object CMakeFiles/aris.dir/src/undo.c.o
[ 92%] Building C object CMakeFiles/aris.dir/src/var.c.o
[ 96%] Building C object CMakeFiles/aris.dir/src/vec.c.o
[100%] Linking C executable aris
[100%] Built target aris
Launch using ./aris
.
For further instructions on building and installation (without cmake
), refer to the INSTALL file.
Run the following inside aris/
:
mkdir build
cd build
cmake -G "MinGW Makefiles" ..
mingw32-make -j4
To install GNU Aris through snap, visit https://snapcraft.io/aris and find the required distribution details according to your system.
cmake
Run the following inside aris/
:
cmake -S qt/ -B build-qt/ -DCMAKE_GENERATOR:STRING=Ninja -DCMAKE_BUILD_TYPE:STRING=Release
cmake --build build-qt/ --target all
(In case Qt is installed in a non-system folder, add -DCMAKE_PREFIX_PATH=...
to the first command line.
See https://stackoverflow.com/a/66457331 for more information.)
This should generate a binary aris-qt
inside build-qt/
, it can be run with ./aris-qt
or you can install to /usr/local
with:
cd build-qt/ && cmake -P cmake_install.cmake
To uninstall:
cd build-qt/ && xargs rm < install_manifest.txt
qmake
Run the following inside aris/
with appropriate path/to/qmake
:
mkdir build-qt
cd build-qt
path/to/qmake -o Makefile ../qt/aris-qt.pro -spec linux-g++ CONFIG+=qtquickcompiler
This should generate a binary aris-qt
inside build-qt/
, it can be run with ./aris-qt
.
To build to WebAssembly, Qt 6.5
and emscripten
version 3.1.25
are required.
Also, since emscripten
doesn't have support for libxml2
yet, it would need to be compiled from source.
Follow these steps (after cloning libxml2) to compile libxml2
:
mkdir build
cd libxml2 && autoreconf -if -Wall
cd ../build
path/to/emconfigure ../libxml2/configure --with-http=no --with-ftp=no --with-python=no --with-threads=no --enable-shared=no
path/to/emmake make
path/to/emar rcs libxml2.a *.o
Now, inside aris/
run the following:
mkdir libxml2
cp path/to/above/created/libxml2.a libxml2/
cp -r path/to/cloned-libxml2/include/libxml/ libxml2/
You can customize these paths by editing the aris-qt.pro
file.
Finally:
mkdir build-wasm
cd build-wasm
/path/to/Qt/6.5.0/wasm_singlethread/bin/qmake /path/to/aris/qt/aris-qt.pro -spec wasm-emscripten && /usr/bin/make qmake_all
make -j $(nproc)
Now, run:
python -m http.server 8000
The project can be found at http://0.0.0.0:8000/
.
We welcome contributions to our project and thank you for taking the time to improve it. Here are some guidelines to follow when contributing:
Before contributing, please make sure to:
There are several ways to contribute to our project:
Please include enough information for the maintainers to reproduce the problem. Generally, that means:
Thank you for considering contributing to our project! We appreciate your time and effort, and we look forward to working with you. Feel free to connect with us for discussions regarding our findings. Mailing list: bug-aris@gnu.org
Distribution: ftp://ftp.gnu.org/gnu/aris/
Home page: http://www.gnu.org/software/aris/
Documentation: https://www.gnu.org/software/aris/manual/aris.html
See AUTHORS and THANKS for contributors.
GNU Aris is free software. See the COPYING file for copying conditions.