When I try to install Padre with cpan (or cpanm)...
bash-4.2$ sudo cpan Padre
...
CPAN.pm: Building P/PL/PLAVEN/Padre-1.00.tar.gz
Found locale ru_RU.UTF-8
Found wxWidgets 2.8.12
Found Wx.pm 0.9921
Unparsable version '6,59' for prerequisite ExtUtils::MakeMaker at inc/Module/Install/Makefile.pm line 352.
Checking if your kit is complete...
Looks good
unexpected end of string while parsing JSON string, at character offset 281 (before "},"build_requires":{...") at /usr/local/share/perl5/CPAN/Meta/Converter.pm line 45.
at /usr/share/perl5/vendor_perl/ExtUtils/MM_Any.pm line 831.
ERROR from evaluation of /root/.local/share/.cpan/build/Padre-1.00-UsByhx/winxs/Makefile.PL: unexpected end of string while parsing JSON string, at character offset 78 (before "}") at /usr/local/share/perl5/CPAN/Meta/Converter.pm line 45.
Warning: No success on command[/usr/bin/perl Makefile.PL]
PLAVEN/Padre-1.00.tar.gz
/usr/bin/perl Makefile.PL -- NOT OK
Running make test
Make had some problems, won't test
Running make install
Make had some problems, won't install
Could not read metadata file. Falling back to other methods to determine prerequisites
This bug we have a few years. I can't find JSON, that was a reason of this error. Anybody pass this problem?
There are known problems in some releases of JSON::PP which cause problems further up the toolchain like this.
Try upgrading JSON::PP. If the toolchain issues prevent you from installing JSON::PP in the normal way, then download the latest version of the module from CPAN, and manually replace the JSON/PP.pm file on your system.
Fedora currently has Padre 0.90 available as a pre-built package. So you can install it with
$ sudo yum install perl-Padre
Related
I have perl 5.22 (Ubuntu 16.04). One software I am using has some issues and needs older perl (older than 5.22). I tried installing 5.20.1 with perlbrew but I got the error:
makefile:840: recipe for target 'test_harness' failed
with mention of file:
../lib/h2ph.t
I tried using --force, and patch as suggested after failure.
Does the older perl no longer being maintained imply anything in this case?
Does anyone have any idea how to overcome this?
I'm trying to install the SQL::Translator module. Everything runs fine until it gets to this test:
DBD::SQLite::db do failed: not an error at t/sqlite-rename-field.t line 62.
# Failed test '-- Convert schema '' to '':;'
# at t/sqlite-rename-field.t line 62.
# died: Died at t/sqlite-rename-field.t line 62.
# Looks like you failed 1 test of 16.
Failed 1/72 test programs. 1/1901 subtests failed.
make: *** [test_dynamic] Error 1
Any help is much appreciated, I was not able to find any similar questions. Thanks.
cpan link: http://search.cpan.org/~ilmari/SQL-Translator-0.11021/lib/SQL/Translator.pm
It could be because of missing dependencies and/or mismatch in version of other perl modules. Try using CPANM to install your desired package. It will take care of dependencies for you.
You can also try to install libsql-translator-perl library if you are on debian based systems. I am sure there will be a compatible library on red hat based systems too.
Also if you want to install from cpan then use CPANM to install the module.
Personally i prefer to use distro libraries in place of installing modules.
In case anyone stumbles across this question, my solution was:
install perlbrew
install latest version of perl via perlbrew
download required libraries
install module
It was much easier than dealing with the older system
I'm having a tough job trying to get GD installed. I'm running a Mas OSX 10.9.2 darwin 13.0.1
When I run this:
cpan[1]> install GD
perl -MCPAN -e shell
I get the follwing error:
cpan[1]> install GD
Reading '/Users/me/.cpan/Metadata'
Database was generated on Sun, 21 Dec 2014 18:53:17 GMT
Running install for module 'GD'
Running make for L/LD/LDS/GD-2.56.tar.gz
Checksum for /Users/me/.cpan/sources/authors/id/L/LD/LDS/GD-2.56.tar.gz ok
Scanning cache /Users/me/.cpan/build for sizes
............................................................................DONE
CPAN.pm: Building L/LD/LDS/GD-2.56.tar.gz
Configuring for libgd version 2.0.11.
Checking for stray libgd header files...none found.
GD library used from: /usr/local
Please choose the features that match how libgd was built:
Undefined subroutine &main::prompt called at Build.PL line 169.
Warning: No success on command[/usr/bin/perl Build.PL ]
'YAML' not installed, will not store persistent state
LDS/GD-2.56.tar.gz
/usr/bin/perl Build.PL -- NOT OK
Running Build test
Make had some problems, won't test
Running Build install
Make had some problems, won't install
Could not read metadata file. Falling back to other methods to determine prerequisites
Failed during this command:
LDS/GD-2.56.tar.gz : writemakefile NO '/usr/bin/perl Build.PL ' returned status 512
Build.PL is trying to call a function called prompt but it doesn't exist. This is because they recently switched build systems from ExtUtils::MakeMaker (Makefile.PL) to Module::Build (Build.PL) but didn't fully convert the program. I've reported the bug.
Most people don't notice this because the prompting is only necessary if GD can't configure itself. It does this by looking for the gdlib-config program. If that can't be found, or it doesn't work, it will ask you for your gdlib configuration. It's best to let gdlib-config take care of that. Best way to solve this problem is to make sure gdlib-config is somewhere in your PATH and that gdlib-config --all works.
Otherwise replace all the instances of prompt in Build.PL with Module::Build->prompt and it should work.
I'm not sure about doing this on OSX, but I recently had similar problems with installing CPAN modules on CentOS.
Some prerequisite modules simply wouldn't install properly from CPAN. These modules had RPMs available. After installing some of the prerequisites via yum, I was able to get CPAN to install the modules I needed.
In particular, I had to install Module-Build and Archive-Tar (which brought in a number of other dependency rpm's) using yum.
Hope this helps.
I am new to perl scripting.I am working on drag and drop file upload and using jquery file upload.I'll appreciate if you can help me in installing this perl module and how to use it.
I am trying to follow readme file but while doing "Perl Makefile.pl" some warnings are there
Warning: prerequisite Image::Magick 0 not found.
Warning: prerequisite JSON::XS 0 not found.
Warning: prerequisite Net::SSH2 0 not found.
Warning: prerequisite Net::SSH2::SFTP 0 not found.
WARNING: Setting ABSTRACT via file 'lib/jQuery/File/Upload.pm' failed
at /usr/lib/perl5/5.8.8/ExtUtils/MakeMaker.pm line 609
Writing Makefile for jQuery::File::Upload
Writing MYMETA.yml and MYMETA.json
i am not sure if it is installed or not.
Please help me for implementation.
Thanks,
Manish
It failed or you will likely gets problems anyway, and you will likely need to install the packages mentioned in the errors. You may also need to install some ssl dev lib bits. For example on mine (Linux Mint/Ubuntu), I needed to do the following...
#edit, looks like on yours you need to install Image::Magick as well
sudo cpan JSON::XS
sudo apt-get install libssh2-1-dev
sudo apt-get install libssl-dev
sudo cpan Net::SSH2
Note: the above packages you may want to see if you can find via your package manager rather than CPAN, however the above should steer you in the right direction of the things you probably need.
then back to the README
perl Makefile.PL
make
make test
make install
I'm running on RHEL6, with RHEL's perl-5.10.1-130.el6_4 installed. I am trying to build some RPMs using cpan2rpm 2.028. Also, perl-version-0.77-130.el6_4 is installed. It's giving odd failures, saying the installed version of Perl is not new enough:
$ perl -
This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi
...
$ cpan2rpm --no-sign ExtUtils::MakeMaker
-- cpan2rpm - Ver: 2.028 --
Upgrade check
Fetch: HTTP
-- module: ExtUtils::MakeMaker --
Using cached URL: http://search.cpan.org//CPAN/authors/id/M/MS/MSCHWERN/ExtUtils-MakeMaker-6.64.tar.gz
Tarball found - not fetching
Metadata retrieval
Tarball extraction: [/root/rpm/SOURCES/ExtUtils-MakeMaker-6.64.tar.gz]
Unable to build module, the following dependencies have failed:
perl >= 5.006
Stopped at /usr/bin/cpan2rpm line 491.
cannot remove path when cwd is /tmp/bj8upl6poj/ExtUtils-MakeMaker-6.64 for /tmp/bj8upl6poj: at /usr/share/perl5/File/Temp.pm line 902
-- Done --
What's causing cpan2rpm not to know what version of perl is installed?
I'm not sure why cpan2rpm doesn't work here. But I'll point out that the Red Hat team now use cpanspec to build all of their RPMs of CPAN modules. You might try that instead.
Unless there a reason you want to build the rpm with cpan2rpm, you can simply install the Perl modules from the yum repository. For example:
# yum install perl-ExtUtils-MakeMaker.x86_64
# rpm -q perl-ExtUtils-MakeMaker
perl-ExtUtils-MakeMaker-6.55-130.el6_4.x86_64
I had the same problem and it's fixed by installing Perldoc.
$ cpan Perldoc