On 09/09/2019 11:17 am, Steven Smith wrote:
I installed rspamd on macOS High Sierra Version 10.13.6, it build and
installed oh, but when starting rspamd it fails with illegal
instruction 4:, the same for rspamadm command. Anyone hs this
successful running?
I have rspamd running flawlessly on 10.14.
I suggest dumping a core and posting the issue upstream. See:
•
https://rspamd.com/doc/faq.html#how-to-figure-out-why-rspamd-process-crashed
• https://github.com/rspamd/rspamd/issues/2884
One thing to look for is the necessary linking of the native PCRE
libraries—I’m not sure if they changed from 10.13 to 10.14. The upstream
PCRE libraries that MacPorts uses have some jit bug. That’s just a guess.
Other possibilities are something specific with a configuration, file
permissions, or buildbot compiler optimization settings.
'illegal instruction' usually points to the build enabling some hardware
dependent capability, such as AVX/AVX2. If you then attempt to run these
binaries on machines that do not support those features, you get this
sort of issue.
The solution is to make sure the default builds, as performed by the
buildbots, assume a minimum CPU type that is applicable to all possible
hardware running that OS. Usually this means just assuming a basic
x96_64 CPU.
If then, you want to allow the use of additional CPU features, the
standard way to tend to do this in MacPorts is to provide a 'native'
variant for the port in question, which a) allows build to determine
what the host machine supports and enables that and b) implicitly forces
a build from source (as the native variant is not enabled by default).
The first thing to do is check the buildbot logs, to see if you can work
out what CPU feature the builds are enabling, and then proceed from there.
https://ports.macports.org/port/rspamd/builds
Chris