Sui sistemi Linux, Vim in pacchetto ha in genere solo uno di uno python
o python3
abilitato. È possibile abilitare entrambi (usando python/dyn
e python3/dyn
), ma durante una sessione è possibile utilizzarne solo uno. Questa discussione sulla mailing list diceva :
Dipende da come sono costruite le librerie Python. Sui sistemi basati su Debian (per motivi che non ricordo di persona), sono costruiti in modo tale che RTLD_GLOBAL debba essere utilizzato per accedere ai simboli. Questo impedisce il caricamento di libpython2.xe libpython3.x nello stesso processo.
Cosa si può fare per consentire il caricamento di entrambi nella stessa sessione?
Opzioni che posso vedere:
- Ricostruisci i pacchetti Python {2,3} in modo che
RTLD_GLOBAL
(qualunque esso sia) non sia necessario. - In qualche modo ottenere la libreria caricata in precedenza per essere scaricato (?!) Da Vim. (È anche possibile?)
Per qualsiasi dettaglio della distribuzione, assumere, in ordine crescente di specificità:
- Basata su Debian
- Ubuntu
- Ubuntu 14.04
- Oppure, Arch Linux, se un sistema basato su Debian è troppo complesso.
Nota che ho Vim da costruire con il supporto di caricamento dinamico per entrambi, quindi costruire Vim non è un problema.