كيف يمكن لتثبيت إصدارات Perl المتعددة دون تعثرها على وحدات XS الخاصة ببعضها البعض؟

StackOverflow https://stackoverflow.com/questions/3486665

سؤال

أرغب في تثبيت عدة إصدارات مختلفة من Perl في دليل منزلي. حاولت استخدام App::perlbrew, ، ولكن وحدات XS من إصدار واحد كانت تسبب segfaults في الإصدار الآخر. هل هناك أي طريقة لتثبيت إصدارات متعددة من Perl وجعلها تلقائيًا تحافظ على وحدات XS الخاصة بهم منفصلة؟

هل كانت مفيدة؟

المحلول

يمكنك تثبيت كل بيرل منفصل تمامًا عن أي تثبيت آخر بيرل. إنها الثنائيات والوحدات النمطية ستكون منفصلة تمامًا عن بعضها البعض. بشكل أساسي ، عند تثبيت كل بيرل ، تعطيه بادئة خاصة به:

 $ ./Configure -des -Dprefix=/usr/local/perls/perl-5.12.1

يتم تثبيت كل شيء تحت هذا البادئة ، وجميع البرامج في سلة مهملات/ سوف تستخدم هذا بيرل. أذهب إلى هذا بتعمق أكبر في برمجة بيرل فعالة.

من هناك ، أصنع ارتباطات في بلدي ~/بن لكل من هذه البرامج وإرفاق رقم الإصدار به ، لذلك لدي ~/perl5.12.1, perldoc5.12.1, ، وهلم جرا. لا يتعين عليّ اختيار الحصول على إصدار بالطريقة التي يريدها بيرلبرو. أكتب المزيد عن هذا في قم بعمل روابط إلى أدوات النسخ. في ال بيرلر فعال مقالات.

قد تكون قادرًا على استخدام Local :: Lib لهذا ، ولكنه مصمم حقًا للعمل مع إصدار واحد من Perl واستخدام دليل مكتبة شخصية واحدة. يمكنك إخباره باستخدام دليل آخر ، ولكن في هذه المرحلة ، لا ينقذك أي شيء على الطريقة التقليدية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top