Skip to content

Mention somewhere that GMP and PCRE are build dependencies #3

Description

@fingolfin

E.g. in the README. Perhaps the configure script could also test if they are available and warn otherwise.

Activity

  1. fingolfin commented on Jan 11, 2023

    @fingolfin
    MemberAuthor

    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?

  2. rgugliel commented on Jan 14, 2023

    @rgugliel
    Collaborator

    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.

  3. fingolfin commented on Jan 19, 2023

    @fingolfin
    MemberAuthor

    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

  4. fingolfin commented on Jan 19, 2023

    @fingolfin
    MemberAuthor

    Searching for regexp.h reveals:

    src/coxiter.h:41:#include "lib/regexp.h"
    src/lib/numbers/mpz_rational.h:41:#include "../regexp.h"
    

    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

  5. fingolfin commented on Jan 19, 2023

    @fingolfin
    MemberAuthor

    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

  6. rgugliel-da commented on Feb 12, 2023

    @rgugliel-da

    When I updated CoxIter version, I also added information about the dependencies in the README

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions