** Description changed:
Tested on my coding host and in a clean LXD ubuntu:16.04 container.
+ Testing in a LXD 17.10 container it works as expected.
# apt install vim-youcompleteme
# vam install youcompleteme
# vim test.py
As soon as I try to begin editing multiple (15+) errors are generated,
filing the window, each requiring Enter to be pressed to continue.
Makes vim unusable.
Apparently this is due to vim-nox being built with +python3 -python but,
despite the Depends: on vim-youcompleteme package being for python3, it
calls 16.04's default python interpreter which is python2.
A workaround for this is:
# echo "let g:ycm_server_python_interpreter = '/usr/bin/python2'" >>
~/.vimrc
Now vim is usable with no errors.
However, there is no autocomplete function working.
Starting with:
# vim -V9 test.py
reveals the error:
Press ENTER or type command to continueTraceback (most recent call last):
- File "/usr/lib/ycmd/check_core_version.py", line 21, in <module>
-
import ycm_core
-
ImportError: dynamic module does not define module export function
(PyInit_ycm_core)
+ File "/usr/lib/ycmd/check_core_version.py", line 21, in <module>
+
import ycm_core
+
ImportError: dynamic module does not define module export function
(PyInit_ycm_core)
- Testing in a LXD 17.10 container it works as expected.
+ This is because Python 3.x C/C++ extension modules (shared libraries)
+ have a different calling convention to that of Python 2.x and must
+ export certain functions, amongst them:
+
+ PyObject* PyInit_modulename(void)
+
+ see https://docs.python.org/3/extending/building.html
+
+ Because the vim-youcomepleteme package was simply rebuilt for Python3
+ the changes required to support Python3 extensions were not added.
+
+ This makes the entire vim-youcompletme package pointless in Debian and
+ Ubuntu.
** Summary changed:
- [16.04] no autocomplete and multiple errors due to not using python3 as the
default interpreter
+ [16.04] no autocomplete and multiple errors due to not using python3
interpreter or extension calling conventions
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1730731
Title:
[16.04] no autocomplete and multiple errors due to not using python3
interpreter or extension calling conventions
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/vim-youcompleteme/+bug/1730731/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs