1 | | See attached build log. Tried `port clean neovim` and also tried uninstalling and reinstalling. Now I have no neovim. |
| 1 | Neovim is built around luajit, which is based on lua 5.1. |
| 2 | |
| 3 | The neovim build process creates a C library, `nlua0`, which is subsequently used by luajit later in the build process. |
| 4 | |
| 5 | In MacPorts, `nlua0` gets built against the default `lua`, which is currently version 5.3. When luajit tries to then use this `nlua0`, the neovim build fails, because the built library includes symbols that don't exist in 5.1. |
| 6 | |
| 7 | In the short term, `port deactivate lua && port install neovim && port activate lua` works around this issue. |
| 8 | |
| 9 | The following [https://github.com/macports/macports-ports/pull/25223 GitHub PR] updates the neovim port to add the proper include directory for lua 5.1 to cmake, and should resolve the issue. |
| 10 | |
| 11 | Ultimately, some changes to the lua packaging and/or docs would help prevent future ports from breaking. |