विंडोज पर मुझे पर्ल के किस संस्करण का उपयोग करना चाहिए? [बन्द है]


98

Win32.perl.org वेब साइट एमएस विंडोज के लिए कई पर्ल वितरण के लिए संदर्भ प्रदान करता है।

लंबे समय से मैं ActiveSter से ActivePerl का उपयोग कर रहा हूं लेकिन हाल ही में मैंने स्ट्रॉबेरी पर्ल पर स्विच किया ।

IMHO स्ट्रॉबेरी पर्ल पर अभी भी सक्रिय पर्ल का एकमात्र लाभ यह तथ्य है कि यह पर्ल टीके के साथ आता है जिसका अर्थ है कि डेवेल को स्थापित करना आसान है :: पीटीकेडीबी ग्राफिकल डिबगर। इसके अलावा, मुझे लगता है कि स्ट्राबेरी पर्ल के सभी फायदे हैं।


इस पोस्ट के बाद से मैंने बहुत सारे अतिरिक्त मॉड्यूल के साथ स्ट्रॉबेरी पर्ल को फिर से पैकेज करना शुरू कर दिया, जिसमें मूस, डांसर और पडर शामिल हैं। पाठक इस पर भी विचार कर सकते हैं: dwimperl.com
szabgab

जवाबों:


80

स्ट्रॉबेरी पर्ल सिर्फ बेहतर और बेहतर हो रहा है। एक समस्या जो मैंने बार-बार ActiveState के साथ की है, वह यह है कि मेरे मॉड्यूल कभी-कभी इंस्टॉल करने में विफल रहते हैं क्योंकि मुझे एक कोर मॉड्यूल के उन्नयन की आवश्यकता होती है, लेकिन वे ऐसा नहीं होने देंगे। इस प्रकार, हर कोई जो विंडोज का उपयोग नहीं करता है वह मेरे कोड का उपयोग कर सकता है, लेकिन वे ActiveState के पर्ल के साथ ऐसा नहीं कर सकते।

ActiveState में एक बहुत डोडी बिल्ड सिस्टम भी है जो अक्सर रिपोर्ट करने में विफल रहता है कि एक मॉड्यूल क्यों नहीं बना। मैं ईमेल करने और इस जानकारी के लिए इतना थक गया कि मैंने अंततः हार मान ली। मैं चाहता हूं कि मेरा कोड विंडोज़ पर चले, लेकिन अगर ActiveState मुझे वह जानकारी उपलब्ध नहीं कराता और मुझे कोर मॉड्यूल को अपग्रेड करने का कोई विकल्प नहीं देता, तो मैं इसका उपयोग नहीं कर सकता। मेरे कुछ मॉड्यूल में किसी भी ऑपरेटिंग सिस्टम पर कोई बिल्ड विफलता नहीं है - सिवाय ActiveState Perl के। स्ट्राबेरी पर्ल का समर्थन करें और सिर्फ ActiveState के बारे में चिंता न करें।

अगर ActiveState ने अपनी बिल्ड सिस्टम और उनके 'नो अपग्रेड टू कोर मॉड्यूल' पॉलिसी को ठीक कर लिया है, तो यह फिर से देखने लायक है।


8
एएस पर्ल 5.8.8 बिल्ड 518 (जनवरी 2007 में जारी) से कोर मॉड्यूल को अपग्रेड करना संभव है। उन्होंने 2008 में अपने CPAN बिल्ड सिस्टम को भी अपग्रेड किया था, लेकिन मुझे नहीं पता कि कब।
एलेक्जेंड्रा सिओर्नेई

1
स्ट्राबेरी पर्ल महान है। हालाँकि, यदि आप अपने शेल के रूप में MSys बैश ​​का उपयोग करते हैं, तो एक ज्ञात समस्या है जो इस तरह के cpanकाम नहीं करती है।
कर्नल पैनिक

30

कोई एकल-श्रेष्ठ पर्ल वितरण नहीं है। वेनिला पर्ल (स्थानांतरित करने योग्य, पुनर्वितरण योग्य पर्ल), और यह अधिक-डेवलपर के अनुकूल स्ट्राबेरी पर्ल की महत्वपूर्ण क्षमता है।

हालाँकि, एक बहुत अच्छा कारण है कि ActivePerl इतना लोकप्रिय क्यों है। लाभ ज्यादातर आपके अंतिम उपयोगकर्ताओं (अपने पैकेज मैनेजर, पीपीएम का उपयोग करने के लिए आवश्यक कोई संकलक) के लिए तैनाती में आसानी के रूप में आते हैं। ActiveState PDK (पर्ल डेवलपमेंट किट) भी एक पूर्ण विंडोज बाइनरी पैक करने का एक बहुत अच्छा तरीका है जिसे उपयोगकर्ता की मशीन पर किसी भी पर्ल को स्थापित करने की आवश्यकता नहीं है।

दुर्भाग्य से, कई बहुत अच्छे CPAN मॉड्यूल (जैसे OpenSSL के लिए पर्ल बाइंडिंग) ActiveState के रिपॉजिटरी के माध्यम से उपलब्ध नहीं हैं।

ज्यादातर चीजों की तरह, आपको अपना चयन करना चाहिए जिसके आधार पर वितरण आपकी आवश्यकताओं को पूरा करता है।


PerlApp एक उपयोगी उपकरण की तरह प्रतीत होता है (मैंने इसकी तुलना Par :: Packer से नहीं की है), लेकिन PDK में यह $ 300 मूल्य का है।
नैट ग्लेन

17

मैं मुख्य रूप से ActivePerl का उपयोग करता हूं, लेकिन मुझे वास्तव में पसंद है जहां स्ट्राबेरी पर्ल का नेतृत्व किया जाता है। मैं प्यार करता हूँ कि cpan खोल "बस काम करता है" और मुझे XS मॉड्यूल स्थापित करने के लिए हुप्स के एक गुच्छा से कूदने की ज़रूरत नहीं है। (उदाहरण के लिए ExtUtils :: FakeConfig, हालांकि हाल के ActivePerl बिल्ड में यह कम आवश्यक है।) मैं एक थंबड्राइव पर पर्ल की संभावना के बारे में भी उत्साहित हूं। पोर्टेबल पर्ल का देव रिलीज़ पहले से ही काफी उपयोगी है।

मैं मानता हूं कि ActivePerl का मुख्य लाभ बॉक्स से बाहर Tk है, लेकिन ध्यान दें कि 5.10 ActivePerl में डिफ़ॉल्ट रूप से Tk के साथ जहाज नहीं हैं। यह बजाय Tkx के साथ जहाज करता है।


13

भविष्य निश्चित रूप से स्ट्राबेरी पर्ल है। हालांकि आपने जो भी चुना है (और यह समस्या विंडोज के लिए अद्वितीय नहीं है), यदि आप अन्य मशीनों को अंतिम परिणाम वितरित कर रहे हैं, तो आप अपने द्वारा प्रदान किए गए इंस्टॉलर / इंस्टॉलेशन निर्देशों के संबंध में सावधानी बरतने वाले हैं।


6

स्ट्राबेरी पर्ल पर्ल पर * निक्स की तरह अधिक है। यह MinGW के साथ आता है जो अपने आप उपयोगी हो सकता है। पर्ल मॉड्यूल भी पीपीएम या cpan के साथ स्थापित किया जा सकता है।


1
नोट: यदि आप स्ट्रॉबेरी पर्ल के साथ मिंगव स्थापित करते हैं, तो ध्यान रखें कि स्ट्रॉबेरी पर्ल मिनीस्स ऐप के विभिन्न संस्करणों का उपयोग कर सकता है। Win32 :: OLE और अन्य मॉड्यूल बनाने के लिए मुझे कुछ प्रमुख समस्याएं थीं स्ट्रॉबेरी पर्ल।
रॉबर्ट पी

यदि आप वास्तव में विंडोज पर पर्ल जैसे पर्ल पर * निक्स चाहते हैं, तो एसयूए / एसएफयू स्थापित करें (उस पर्ल को स्थापित न करें जो इसके साथ आता है) और डेबियन इंटरिक्स / pkgsrc-interix के पर्ल का उपयोग करें।
MkV

4

मैं अब तक स्ट्रॉबेरी पर्ल पसंद करता हूं। एक के लिए, यह मिंगविन के भाग के रूप में जीसीसी स्थापित करता है, ताकि आप सीधे सीपीएएन से इंस्टॉल कर सकें।

मैंने थोड़ी देर के लिए ActiveState के पर्ल का उपयोग किया, लेकिन मुझे एक मशीन से दूसरी मशीन में उनके दिखने के बावजूद (प्रतीत होता है) बहुत अधिक चंचलता थी। उनके पीपीएम मॉड्यूल पैकेजिंग ने खराब स्वाद भी छोड़ दिया। यह पैकेजों को प्रबंधित करने के लिए मृत-सरल बनाता है, लेकिन आप CPAN अपडेट के बाद PPM को अपडेट करने के लिए उन पर भरोसा करते हैं। इसके अलावा, PPM किसी भी तरह से CPAN की पूर्ण सामग्री नहीं है; पिछली बार जब मैंने ActivePerl का उपयोग किया था, तो मुझे उन सभी मॉड्यूल को खोजने में कठिन समय मिला, जिनकी मुझे आवश्यकता थी, और जो अक्सर थे वे एक पुराने संस्करण थे।


2
मैं उत्सुक हूं कि एक डाउन-वोट को क्या रेट किया गया।
गोलडू

3

मैं हमेशा साइगविन का उपयोग करता हूं (बैश वाले xterms, cmd विंडो से बहुत बेहतर हैं) और इसके साथ आने वाला पर्ल। मैं CPAN शेल ("cpan" कमांड) के साथ पर्ल मॉड्यूल स्थापित करता हूं; यह बढ़िया काम करता है।


3

ActiveState Perl को वास्तव में Windows Perl माना जाता है। जबकि इसमें बहुत सी खामियां हैं और हम में से बहुत से लोग कुछ और उपयोग करते हैं, यह बहुत लोकप्रिय है। यदि आप विंडोज मशीन पर निष्पादित होने के लिए पर्ल कोड का निर्माण कर रहे थे (अपने खुद के अलावा), मैं इसे एक डिफ़ॉल्ट (या डिफ़ॉल्ट रूप में मैं इसे प्राप्त कर सकता था) की तरह आंख से लिखने पर विचार करूंगा। कुछ भी और आप बाद में अपने ऐप का उपयोग करने की कोशिश कर रहे अन्य लोगों के लिए प्रवेश के लिए बाधाओं का परिचय दे रहे हैं।


AFAIK, PAR pp स्ट्राबेरी के साथ ठीक काम करता है जो आपको खुद के ऐप को वितरित करने के मामले में एक बड़ा फायदा है क्योंकि IIUC को आपको अपने DLL का उपयोग करने पर pp संकलित ऐप्स को वितरित करने में सक्षम होने के लिए OEM लाइसेंस की आवश्यकता होगी।
सिनान Junnür

3
@Sinan, ActivePerl लाइसेंस और PAR के बारे में आपका कथन गलत है। लाइसेंस के The license also allows You to redistribute parts of the Package as part of an application generated by wrapping tools such as PAR, PerlApp or Perl2Exe. However, this License does not allow You to (a) redistribute the Package as a whole, (b) use its parts to create a language distribution, or (c) redistribute the PerlScript, Perl for ISAPI or PerlEx components with Your application. एक्टीवेट
सक्रिय करें /

@daotoad Hmmmm ... मैं पहले वाले संस्करण की शपथ ले सकता था, इसकी अनुमति नहीं दी थी, लेकिन मुझे यकीन भी नहीं है कि मुझे सही याद है। सुधार के लिए धन्यवाद।
सिनान Jannür

2

मुझे स्ट्राबेरी की बड़ी समस्या थी, और मुझे लगा कि कोई सहारा नहीं है। PerlMonks में अच्छे लोग मेरी मदद नहीं कर सके, और मैंने हार मान ली। यदि यह पृष्ठ आपको विश्वास की कमी के साथ छोड़ता है, तो आपका जवाब होगा।


1

कोड मैं फॉर्च्यून 500 कंपनियों में भूमि लिखता हूं इसलिए "कॉर्पोरेट" भावना मददगार है। मैंने अब तक ActivePerl का उपयोग किया है, और यह आंतरिक टूलींग और उन बड़े ग्राहकों के लिए वितरण के लिए ठीक काम किया है।


1

मैं सक्रिय स्टेट पर्ल 5.014 का उपयोग कर रहा हूं, जो ठीक काम करता है।

समस्या यह है, इसमें Padre (IDE, डीबगिंग वातावरण) का नवीनतम संस्करण नहीं है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.