https://bugs.exim.org/show_bug.cgi?id=1830
--- Comment #2 from Pascal MALAISE <[email protected]> --- In pcreposix.h (8.38) I see: PCREPOSIX_EXP_DECL int pcreposix_regcomp(regex_t *, const char *, int); and further on in the same file: #define regcomp pcreposix_regcomp This allows calling regcomp(...) but also ensures that as soon as I include pcreposix.h I will finally call the pcreposix_regcomp of libpcreposix. In pcre2posix.h (10.21) I see: PCRE2POSIX_EXP_DECL int regcomp(regex_t *, const char *, int); As a consequence, despite I include pcre2posix the main is not linked to libpcre2-posix. (Note, the main also calls pcre2_config, so it includes pcr2). The main: #define PCRE2_CODE_UNIT_WIDTH 8 #include <pcre2.h> #include <pcre2posix.h> ... res = regcomp (®ex, argv[1], 0); The linking command: gcc -o tpcre2 lib_Linux/tpcre2.o -lpcre2-posix -lpcre2-8 ldd tpcre2 linux-vdso.so.1 libpcre2-8.so.0 libc.so.6 libpthread.so.0 /lib64/ld-linux-x86-64.so.2 Similar code and commands with "old" pcre lead to: linux-vdso.so.1 libpcreposix.so.3 libpcre.so.3 libc.so.6 libpthread.so.0 /lib64/ld-linux-x86-64.so.2 Maybe the pcreposix_regcomp() and #define regcomp pcreposix_regcomp is an artifact introduced by the debian packager? I use Ubuntu 16.04. (In reply to Philip Hazel from comment #1) -- You are receiving this mail because: You are on the CC list for the bug. -- ## List details at https://lists.exim.org/mailman/listinfo/pcre-dev
