# 2020Q2: editors/emacs may fail to build (SIGSEGV)



## PMc (Apr 14, 2020)

With update from 2020Q1 to 2020Q2 editors/emacs can fail to build with some segmentation fault while compiling lisp stuff.

Cause:
Emacs depends on graphics/ImageMagick6 (option MAGICK). This is the default, but can be disabled.
ImageMagick offers an option OPENMP ("Parallel processiong support via OpenMP). This is not the default.

Both enabled seems not to work anymore.


----------



## noodlefling (Apr 28, 2020)

The latest version of emacs seems to be asking for ImageMagick7 now (at least on my system), but it's stuck because it still wants lang/python27 and that won't install for security reasons.  Everything else I've got seems to be running fine on lang/python37 now.

Didn't see anything obvious in the emacs `make config` to resolve the issue.

Have you made any progress?


----------



## noodlefling (Apr 28, 2020)

As a follow-up, the emacs compilation problem was fixed by

`cd /usr/ports/lang/python27
make DISABLE_VULNERABILITIES=yes
make install`

This is obviously not ideal, but at least the gears are turning again. Hopefully there will be an emacs update soon to incorporate python37, or some smart person will tell us how to force the issue so we can remove python27 entirely.


----------



## SirDice (Apr 30, 2020)

noodlefling said:


> Hopefully there will be an emacs update soon to incorporate python37,


It's not Emacs that depends on it, not directly at least. It's one of its many dependencies that pulls in Python. 


> or some smart person will tell us how to force the issue so we can remove python27 entirely.


There are still a number of ports that require Python 2.7 as a _build_ dependency, not a _run_ or _library_ dependency.  As it appears you're mostly installing ports with default options you should consider using packages instead. Packages don't require _build_ dependencies to be installed.


----------



## noodlefling (May 6, 2020)

Unfortunately, there are a number of ports I use that require non-standard options.  I know packages are the future and orders of magnitude simpler to deal with (I have inherited a lightly-used Red Hat box where all I have to do is an occasional `yum update`), but I'm fairly comfortable with FreeBSD ports in general, and have come to expect these sorts of things from time to time.

One complicating issue regarding this particular problem was that I thought _all_ of Python 2.7 was deprecated, and that's why there was a system complaint about the lang/python27 port during the upgrade. And that's why I was hoping for a dependency update.

But it turns out it was a garden-variety security issue with python27 (the kind you can see with `pkg audit`) which has since been resolved.

So, as of today, Python has been rebuilt and is updated and I rebuilt Emacs for kicks and everything seems happy.


----------

