-
Notifications
You must be signed in to change notification settings - Fork 161
The answer is long and has its own page.
The short answer is: Currently you can't use the official GAP release as a C library.
There is Volker Braun's libgap effort that allows using the GAP kernel as a C library, and there are plans to integrate this work into the official GAP release in the near future, probably at the Joint GAP-Sage Days in January 2016.
See also Can I call GAP functions from another programme? from the GAP F.A.Q.
Reproducing Max Horn's post in the GAP Forum:
The GAP master branch just works, but for GAP 4.11.0, some extra work is needed, as the bundled GMP is slightly to old to work "out of the box".
The easiest way to deal with it is to use homebrew for this (which I recommend anyway); if you don't have it already, follow the instructions on https://brew.sh to install it. Then issue the following command in your terminal to install GMP (and for good measures, also GNU readline, for a more pleasant experience in the interactive GAP prompt):
brew install gmp readline
Then reconfigure and recompile GAP as follows:
./configure --with-gmp=/opt/homebrew --with-readline=/opt/homebrew/opt/readline
make -j8
I've checked my new test file with 'ReadTest' and all worked fine locally. Why now some diffs are reported to me?
You should use 'Test' instead of 'ReadTest'. 'Test' is more robust and flexible, and was introduced in GAP 4.5 in 2012. Since GAP 4.8, 'ReadTest' is obsolete and supported for backwards compatibility via a call to 'Test' with comparing the output up to whitespace and displaying a warning.
Why some test failures were not reported on GitHub and became known only after the pull request had been merged?
GitHub tests use free service provided by the Travis CI. It limits one run up to one hour and also terminates the test if not receiving any output for ten minutes. Hence, we run only a subset of tests there, and run further tests using Jenkins CI on our test pool in St Andrews, where we have no such limitations.