I've got Vim installed on MacOS using Brew and it installs with +python3 support for Python 3.7.2 by default.

I'm writing a Vim plugin which utilises some Python 3.7 and would like this to be able to work on parity with Linux with how it works on MacOS.

In a Docker container with Ubuntu Bionic I've tried installing Python 3.7.2 and Vim; and it installs Python 3.6 and links to this version.

I've tried installing Vim from source in the container and it will build for 3.6 but not for 3.7.

On Linux, running the following to configure the build:

./configure --with-features=huge --enable-cscope --enable-multibyte \
  --enable-rubyinterp --enable-pythoninterp --enable-python3interp \
  --with-python3-config-dir=/usr/lib/python3.7/config-3.7m-x86_64-linux-gnu \

fails with the message:

checking if compile and link flags for Python 3 are sane... no

I've thought of downgrading the MacOS Vim version to 3.6 and coding the plugin to that version but thought I would explore options to get it working on Linux with Python 3.7 first.

Also, if this is not the appropriate forum for this question, please let me know and I will move it to a stack-exchange site more appropriate.


Probably your default python3 is 3.6. You need, then, tell the build process to use python3.7. You can do that with the parameters --with-python3-command:

./configure --with-python3-command=python3.7 \
            --with-python3-config-dir=/usr/lib/python3.7/config-3.7m-x86_64-linux-gnu \
            ... (other config params) ...


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.