Hi all,
Compiling Exim 4.96 fails on Devuan 4.0 Chimaera (basically Debian but
without systemd).
Firstly it complained that I didn't have "pcre2.h" - which it has never
asked for before:
/bin/sh ../scripts/Configure-os.h
cc -DMACRO_PREDEF macro_predef.c
In file included from macro_predef.c:12:
exim.h:527:10: fatal error: pcre2.h: No such file or directory
527 | #include <pcre2.h>
| ^~~~~~~~~
compilation terminated.
so I did:
root@relay1:/home/mike/exim-4.96# apt-cache search pcre2
elpa-pcre2el - Emacs mode to convert between PCRE, Emacs and rx
regexp syntax
libpcre2-16-0 - New Perl Compatible Regular Expression Library - 16
bit runtime files
libpcre2-32-0 - New Perl Compatible Regular Expression Library - 32
bit runtime files
libpcre2-8-0 - New Perl Compatible Regular Expression Library- 8
bit runtime files
libpcre2-dev - New Perl Compatible Regular Expression Library -
development files
libpcre2-posix2 - New Perl Compatible Regular Expression Library -
posix-compatible runtime files
libpcre3 - Old Perl 5 Compatible Regular Expression Library -
runtime files
libpcre3-dev - Old Perl 5 Compatible Regular Expression Library -
development files
librust-grep-pcre2-dev - Use PCRE2 with the 'grep' crate - Rust
source code
librust-pcre2-dev - High level wrapper library for PCRE2 - Rust
source code
librust-pcre2-sys-dev - Low level bindings to PCRE2 - Rust source code
pcre2-utils - New Perl Compatible Regular Expression Library -
utilities
root@relay1:/home/mike/exim-4.96#
and installed the bits I thought I needed:
root@relay1:/home/mike/exim-4.96# apt-get install libpcre2-dev
libpcre2-posix2
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
libpcre2-16-0 libpcre2-32-0
The following NEW packages will be installed:
libpcre2-16-0 libpcre2-32-0 libpcre2-dev libpcre2-posix2
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 1,231 kB of archives.
After this operation, 3,980 kB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1
http://gb.deb.devuan.org/merged chimaera/main amd64
libpcre2-16-0 amd64 10.36-2 [231 kB]
Get:2
http://gb.deb.devuan.org/merged chimaera/main amd64
libpcre2-32-0 amd64 10.36-2 [220 kB]
Get:3
http://gb.deb.devuan.org/merged chimaera/main amd64
libpcre2-posix2 amd64 10.36-2 [49.1 kB]
Get:4
http://gb.deb.devuan.org/merged chimaera/main amd64
libpcre2-dev amd64 10.36-2 [731 kB]
Fetched 1,231 kB in 4s (311 kB/s)
<snip>
Now hen I compile I get:
cc spool_mbox.c
cc arc.c
cc bmi_spam.c
cc dane.c
cc dcc.c
cc dmarc.c
cc imap_utf7.c
cc spf.c
cc utf8.c
cc version.c
cc -o exim
/usr/bin/ld: exim.o: in function `show_whats_supported':
exim.c:(.text+0x95b): undefined reference to `pcre2_config_8'
/usr/bin/ld: exim.o: in function `regex_must_compile':
exim.c:(.text+0xf96): undefined reference to `pcre2_compile_8'
/usr/bin/ld: exim.c:(.text+0xfcd): undefined reference to
`pcre2_general_context_create_8'
/usr/bin/ld: exim.c:(.text+0xfd8): undefined reference to
`pcre2_compile_context_create_8'
/usr/bin/ld: exim.c:(.text+0xfff): undefined reference to
`pcre2_compile_8'
/usr/bin/ld: exim.c:(.text+0x100f): undefined reference to
`pcre2_compile_context_free_8'
/usr/bin/ld: exim.c:(.text+0x1017): undefined reference to
`pcre2_general_context_free_8'
/usr/bin/ld: exim.c:(.text+0x1030): undefined reference to
`pcre2_get_error_message_8'
/usr/bin/ld: exim.c:(.text+0x1072): undefined reference to
`pcre2_get_error_message_8'
/usr/bin/ld: exim.o: in function `regex_match_and_setup':
exim.c:(.text+0x10c8): undefined reference to
`pcre2_match_data_create_from_pattern_8'
/usr/bin/ld: exim.c:(.text+0x10f2): undefined reference to
`pcre2_match_8'
/usr/bin/ld: exim.c:(.text+0x1132): undefined reference to
`pcre2_get_error_message_8'
...
<snip>
...
Can't seem to find what's missing ... any ideas?
Mike