لماذا لا يتم التعرف على الوحدة النمطية التي تم تثبيتها بواسطة cpanm`؟

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

  •  04-10-2019
  •  | 
  •  

سؤال

لقد قمت بتثبيت Perl-5.12.2 باستخدام perlbrew:

perlbrew install perl-5.12.2 -D=usethreads -D=useithreads -D=uselargefiles -f

ثم انتقلت إلى هذا الإصدار وتثبيته IPC::System::Simple استخدام cpanm.

ومع ذلك ، عندما أحاول تشغيل البرنامج النصي الذي أحصل عليه:

Can't locate IPC/System/Simple.pm in @INC (@INC contains: /home/dave/workspace/proj1/scripts/bin/../lib /home/dave/src/bioperl-live /home/dave/perl5/perlbrew/perls/perl-5.12.2/lib/site_perl/5.12.2/x86_64-linux-thread-multi /home/dave/perl5/perlbrew/perls/perl-5.12.2/lib/site_perl/5.12.2 /home/dave/perl5/perlbrew/perls/perl-5.12.2/lib/5.12.2/x86_64-linux-thread-multi /home/dave/perl5/perlbrew/perls/perl-5.12.2/lib/5.12.2 .) at /home/dave/workspace/proj1/scripts/bin/../lib/createLayout.pm line 14.

لقد وجدت أيضًا DIR التالي:~/perl5/lib/perl5/x86_64-linux-thread-multi/auto/IPC/System/Simpleلكنه فارغ (ليس لدي أي فكرة عما إذا كان هذا يعني شيئًا).

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

المحلول

ماذا فعلت which cpanm من عرض سطر الأوامر؟ بالنسبة لك يجب أن تقارير:

/home/dave/perl5/perlbrew/bin/cpanm

إذا كان هذا على ما يرام ، فماذا يفعل ls -l /home/dave/perl5/perlbrew/bin/cpanm تبين؟ يجب أن يشير إلى:

cpanm -> /home/dave/perl5/perlbrew/perls/current/bin/cpanm

وأخيرا ls -l /Users/barry/perl5/perlbrew/perls/current يجب أن تشير إلى بيرل الذي تحولت إليه perlbrew:

/home/dave/perl5/perlbrew/perls/current -> perl-5.12.2

يجب أن تكون هذه الثلاثة هكذا مثل هذا شيء خاطئ.

إذا لم يكن ذلك ، فمن المحتمل أن تكون هناك مشكلة واحدة هي ذلك cpanm يشير إلى بيرل مثبت آخر. تحتاج أن تملك cpanm مثبت لكل إصدار من Perl تحت perlbrew:

perlbrew switch perl-5.12.2
curl -L http://cpanmin.us | perl - App::cpanminus

الآن إذا which cpanm لا يزال لا يظهر perlbrew المسار ثم لديك ملف $PATH قضية الأسبقية في الخاص بك .bash_profile (أو ما يعادلها) ملف. يمكن إصلاح هذا عن طريق التأكد من أن الخاص بك perlbrew خط...

source /home/dave/perl5/perlbrew/etc/bashrc

... في ملف الملف الشخصي بعد أي شيء آخر export $PATH خطوط.

بعد إعادة السقوط مرة أخرى ، يمكنك تأكيد أن هذا صحيح من خلال العمل echo $PATH ويجب أن ترى perlbrew في بداية (اليسار) لسلسلة المسار ، أي. شيء من هذا القبيل:

/home/dave/perl5/perlbrew/bin:/home/dave/perl5/perlbrew/perls/current/bin:/usr/bin:/bin:/usr/local/bin:

نصائح أخرى

محاولة هذا الدليل خطوة بخطوة, ، إيلاء اهتمام وثيق للخطوات 7 و 8 (واختياريا 9).

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