Linux, Backtrack, Perl, Bluesniff - perl

I am trying to run bluesniff on backtrack.I have the bluesniff.pl script and when i try to execute it by typing:
perl bluesniff.pl
An error message came out:
Can't locate Curses.pm in #INC (#INC contains: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10 /usr/local/lib/site_perl .) at /usr/local/share/perl/5.10.1/Curses/Application.pm line 92.
BEGIN failed--compilation aborted at /usr/local/share/perl/5.10.1/Curses/Application.pm line 92.
Compilation failed in require at bluesniff.pl line 23.
BEGIN failed--compilation aborted at bluesniff.pl line 23.
Please advise!
To all who commented, thanks! It worked.

Run
cpan Curses
from the command line to install this module and all dependencies.

You need to download the Curses Perl module.

You can install Curses simply by typing apt-get install libcurses-ui-perl if you don't need to learn and install all the Perl stack. If you prefer to, do as others said and use Cpanm to install it.

Related

we are unable to access the CGI perl application after Linux OS upgrade from RHEL6 to RHEL7

we are unable to access the CGI perl application after Linux OS upgrade from RHEL6 to RHEL7.
Can't locate Carp.pm in #INC (#INC contains: /local/silas/lib2 /local/silas/lib/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/share/perl5/CGI.pm line 3.
BEGIN failed--compilation aborted at /usr/share/perl5/CGI.pm line 3.
Compilation failed in require at /ford/eccws6/apache/htdocs/index.cgi line 9.
BEGIN failed--compilation aborted at /ford/eccws6/apache/htdocs/index.cgi line 9.
Please tell me what is exactly caused for this issue and do need to make any changes in setup?
Like #Shawn said in a comment, RedHat splits off core Perl modules into separate packages that don't get installed when you install perl or perl-core.
I believe you need the perl-Carp package:
yum install perl-Carp

Is version.pm available in CPAN any longer?

I am trying to find the Perl Module version.pm to fix the error below I am receiving while trying to install module CPAN-Meta-Requirements-2.133. But I don't see version.pm, the only one I see is Version.PM which is obviously not the one Perl is looking for. Can anyone point to where I can get this version or how I can fix this dependency if version.pm is no longer available?
Perl Version:
v5.16.3
OS:
GNU/Linux
x86_64 x86_64 x86_64
Error:
Can't locate version.pm in #INC (#INC contains: # Line breaks added
/root/CPAN-Meta-Requirements-2.133/blib/lib # for readability
/root/CPAN-Meta-Requirements-2.133/blib/arch
/usr/local/lib64/perl5
/usr/local/share/perl5
/usr/lib64/perl5/vendor_perl
/usr/share/perl5/vendor_perl
/usr/lib64/perl5
/usr/share/perl5
.) at (eval 1) line 2.
BEGIN failed--compilation aborted at (eval 1) line 2.
BEGIN failed--compilation aborted at /root/CPAN-Meta-Requirements-2.133/blib/lib/CPAN/Meta/Requirements.pm line 48.
Compilation failed in require at t/accepts.t line 4.
BEGIN failed--compilation aborted at t/accepts.t line 4.
t/accepts.t ............ Dubious, test returned 255 (wstat 65280, 0xff00)
No subtests run
version has come with Perl since Perl 5.10, so it's weird that you would have to install it.
$ corelist version
version was first released with perl v5.9.0
But version is also available on CPAN in its own distribution in order to allow people to upgrade version without upgrading Perl.
So you may indeed install it as any other module.
cpan version
OK, so first: your link is to CPAN/Version.pm. This is very different than version.pm. Directory names and the path relative to Perl's include directory are very important to Perl, and putting a .pm file in the wrong location relative to the include path can break Perl pretty badly.
Second: because of that, never install Perl modules manually. Use cpanm instead:
curl -L https://cpanmin.us | perl - --sudo App::cpanminus # Omit --sudo if your perl isn't installed as root
cpanm version
Third: the version.pm that you want is this one: https://metacpan.org/pod/distribution/version/lib/version.pod, in the JPEACOCK/version-0.9912 distribution.

MEAD (Perl Package) Installation

I am trying to install MEAD http://www.summarization.com/mead/ for text summarization, but when I try to run a basic example from the bin folder
./mead.pl GA3
I get the error below:
Cannot locate loadable object for module XML::Parser::Expat in #INC (#INC contains: mead/bin/../lib mead/bin/../lib/arch /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at mead/bin/../lib/XML/Parser.pm line 15
Compilation failed in require at mead/bin/../lib/XML/Parser.pm line 15.
BEGIN failed--compilation aborted at mead/bin/../lib/XML/Parser.pm line 19.
Compilation failed in require at /mead/bin/../lib/MEAD/Cluster.pm line 16.
BEGIN failed--compilation aborted at mead/bin/../lib/MEAD/Cluster.pm line 16.
Compilation failed in require at ./mead.pl line 29.
BEGIN failed--compilation aborted at ./mead.pl line 29.
Strange enough, I already have expat installed. I am wondering, what could be the cause of this error?
I highly recommend you reading mead documentation before starting. In page 7 of this document, it is pointed out the required perl libraries for mead. You can find required perl library under path/mead/external. Install all libraries under the external directory, it will run without any problems.
Required Libraries:
Perl 5.5 or above
XML::Parser
Expat
XML::Writer
XML::TreeBuilder
Text::Iconv
etc.

Can't locate Bench.pm in #INC [Perl] [duplicate]

This question already has answers here:
What's the easiest way to install a missing Perl module?
(24 answers)
Closed 9 years ago.
I have a problem when i compile my perl program :
it mention :
Can't locate Bench.pm in #INC (#INC contains: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) at test.pl line 4.
BEGIN failed--compilation aborted at test.pl line 4.
Any idea please?
Thanks
Install Bench as you would any other CPAN module, e.g. with cpanm, cpanp or cpan.
You might want to first use perlbrew to install a local (and newer) version of Perl so you won't be touching anything related to the system Perl installation.
First, check if you have installed Bench module:
%> perl -MBench -e 1
If you get the error message, you have to install it:
%> cpan Bench

Why does Perl say that it can't find my module?

I wanted to play with XML::Rabbit, however I've got a problem even with the simplest code. I managed to strip this into one line.
In a simple file, I use
use Class::Load;
and then:
perl test_optlist.pl
Can't locate Data/OptList.pm in #INC (you may need to install the Data::OptList module) (#INC contains: [CUT]) at /home/szymon/perl5/lib/perl5/Class/Load.pm line 8.
BEGIN failed--compilation aborted at /home/szymon/perl5/lib/perl5/Class/Load.pm line 8.
Compilation failed in require at test_optlist.pl line 2.
BEGIN failed--compilation aborted at test_optlist.pl line 2.
so let's install it:
$ cpanm Data::OptList
Data::OptList is up to date. (0.107)
Perl version:
This is perl 5, version 17, subversion 8 (v5.17.8) built for x86_64-linux
Where is the problem?
You're surely using another perl's cpanm. Do
perlbrew install-cpanm
to install a version of cpanm under perlbrew's control, make sure this new cpanm is the one found first in the path (though I suspect it will be), then try again