लिनक्स सिस्टम पर, पैकेज्ड विम का आमतौर पर केवल एक ही python
या python3
इनेबल होता है। यह संभव है के लिए दोनों सक्षम होने के लिए (का उपयोग करते हुए python/dyn
और python3/dyn
), लेकिन एक सत्र के दौरान केवल एक ही इस्तेमाल किया जा सकता। इस मेलिंग सूची चर्चा में कहा गया है :
यह इस बात पर निर्भर करता है कि पायथन पुस्तकालय कैसे बनाए जाते हैं। डेबियन-आधारित सिस्टम (जिन कारणों से मैं ऑफहैंड को याद नहीं करता हूं) के लिए, वे ऐसे बनाए जाते हैं कि RTLD_GLOBAL का उपयोग प्रतीकों तक पहुंचने के लिए किया जाना है। यह एक ही प्रक्रिया में libpython2.x और libpython3.x दोनों को लोड करने से रोकता है।
एक ही सत्र में दोनों को लोड करने में सक्षम करने के लिए क्या किया जा सकता है?
विकल्प जो मैं देख सकता हूं:
- अजगर {2,3} पैकेजों को फिर से बनाएं ताकि
RTLD_GLOBAL
(जो भी हो) की जरूरत न हो। - किसी तरह पहले से भरी हुई लाइब्रेरी को लोड किया जाए (!) विम द्वारा। (क्या यह भी संभव है?)
विशिष्टता के बढ़ते क्रम में, डिस्ट्रो के किसी भी विवरण के लिए:
- डेबियन-आधारित
- उबंटू
- उबंटू 14.04
- या, आर्क लिनक्स, अगर एक डेबियन-आधारित प्रणाली बहुत जटिल है।
ध्यान दें कि मुझे दोनों के लिए गतिशील लोडिंग समर्थन के साथ बनाने के लिए विम मिला है , इसलिए विम का निर्माण कोई समस्या नहीं है।