You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Mention somewhere that GMP and PCRE are build dependencies #3
Well, at least I assume it needs PCRE because I see PCRERegexp; but PCRE does not actually seem to provide regexp.h, so I am not sure how to compile this code at all?
Dependencies are the same than for CoxIter so you do need PCRE (https://rgugliel.github.io/CoxIter/page_install.html).
I'll improve that and bump CoxIter versions in the following days/weeks.
I've sent you an email; I'd be interested to hear your thoughts.
But the code uses regexp.h, which is not provided by PCRE, nor by PCRE2. Compiling the code says:
In file included from src/lib/numbers/mpz_rational.h:41,
from src/lib/numbers/mpz_rational.cpp:23:
/usr/include/regexp.h:29:2: error: #error "The GNU C Library no longer implements <regexp.h>."
29 | #error "The GNU C Library no longer implements <regexp.h>."
| ^~~~~
/usr/include/regexp.h:30:2: error: #error "Please update your code to use <regex.h> instead (no trailing 'p')."
30 | #error "Please update your code to use <regex.h> instead (no trailing 'p')."
| ^~~~~
I'd expect that pcre.h or pcre2.h be included -- or perhaps pcreposix.h to be use the POSIX compatibility wrappers
So perhaps the file regexp.h was meant to be part of the source code of this repository and was "forgotten"? Though the two includes are also inconsistent as to where they expect the file to reside
OK, I see now: there is supposed to be a command line flag for the compiler to disable use of the regexp code: -D_COMPILE_WITHOUT_REGEXP_=1. However, it never reached my compiler because the CXXWRAP env var was set and thus overrode the one in Makefile.in.
I think the Makefile could benefit from a major overhaul. I'll submit a PR, together with setting up continuous integration at GitHub
E.g. in the README. Perhaps the configure script could also test if they are available and warn otherwise.