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

Reply via email to