บนระบบ Linux, Vim ที่แพ็กเกจมักมีเพียงหนึ่งpython
หรือpython3
เปิดใช้งาน เป็นไปได้ที่จะเปิดใช้งานทั้งคู่ (ใช้python/dyn
และpython3/dyn
) แต่ในระหว่างเซสชันสามารถใช้งานได้เพียงครั้งเดียว การสนทนารายชื่อผู้รับจดหมายนี้กล่าวว่า :
ขึ้นอยู่กับวิธีการสร้างไลบรารี่ของ Python บนระบบที่ใช้เดเบียน (ด้วยเหตุผลที่ฉันจำไม่ได้ในทันที) พวกมันถูกสร้างขึ้นเพื่อให้ RTLD_GLOBAL ต้องใช้เพื่อเข้าถึงสัญลักษณ์ สิ่งนี้ป้องกันการโหลดทั้ง libpython2.x และ libpython3.x ในกระบวนการเดียวกัน
ฉันสามารถทำอะไรได้บ้างเพื่อเปิดใช้งานการโหลดทั้งสองอย่างในเซสชันเดียวกัน
ตัวเลือกที่ฉันเห็น:
- สร้าง Python {2,3} แพ็คเกจใหม่เพื่อ
RTLD_GLOBAL
ไม่ให้จำเป็นต้องมีสิ่งใด ๆ - อย่างใดทำให้ห้องสมุดโหลดก่อนหน้านี้เพื่อยกเลิกการโหลด (?!) โดย Vim (นั่นเป็นไปได้หรือไม่)
สำหรับรายการใด ๆ ของ distro ให้สมมติเพื่อเพิ่มความจำเพาะ:
- Debian-based
- อูบุนตู
- Ubuntu 14.04
- หรือ Arch Linux หากระบบที่ใช้เดเบียนซับซ้อนเกินไป
โปรดทราบว่าฉันมีVim ให้สร้างด้วยการรองรับการโหลดแบบไดนามิกสำหรับทั้งสองดังนั้นการสร้าง Vim จึงไม่ใช่ปัญหา