DBIx::Class::Schema::Loader installation fails - perl

Well, I been trying to get this work for the past two days, re installing dependencies, updating modules, but I haven't found any solution.
install command line:
$> cpan DBIx::Class::Schema::Loader
I get failed tests, such as:
GENEHACK/DBIx-Class-Schema-Loader-0.07035.tar.gz
/usr/bin/make -- OK
CPAN: YAML loaded ok (v0.84)
Running make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/*.t t/backcompat/0.04006/*.t
t/01use.t ............................... ok
t/02pod.t ............................... ok
t/10_01sqlite_common.t .................. 6/294
# Failed test 'Correct number of warnings'
# at t/lib/dbixcsl_common_tests.pm line 323.
# got: '10'
# expected: '9'
# Column 'dbix_class_testcomponent' in table 'loader_test2' collides with an inherited method.
# See "COLUMN ACCESSOR COLLISIONS" in perldoc DBIx::Class::Schema::Loader::Base .
# Column 'dbix_class_testcomponentmap' in table 'loader_test2' collides with an inherited method.
# See "COLUMN ACCESSOR COLLISIONS" in perldoc DBIx::Class::Schema::Loader::Base .
# Column 'testcomponent_fqn' in table 'loader_test2' collides with an inherited method.
# Column 'set_primary_key' in table 'loader_test2' collides with an inherited method.
# See "COLUMN ACCESSOR COLLISIONS" in perldoc DBIx::Class::Schema::Loader::Base .
# Column 'set_primary_key' in table 'loader_test4' collides with an inherited method.
# See "COLUMN ACCESSOR COLLISIONS" in perldoc DBIx::Class::Schema::Loader::Base .
# Column 'belongs_to' in table 'loader_test4' collides with an inherited method.
# See "COLUMN ACCESSOR COLLISIONS" in perldoc DBIx::Class::Schema::Loader::Base .
# Relationship 'belongs_to' in source 'LoaderTest4' for columns 'belongs_to' collides with an inherited method. Renaming to 'belongs_to_rel'.
# See "RELATIONSHIP NAME COLLISIONS" in perldoc DBIx::Class::Schema::Loader::Base .
# stat(t/var/common_dump/DBIXCSL_Test/Schema/MyResult/LoaderTest1.pm): No such file or directory at .cpan/build/DBIx-Class-Schema-Loader-0.07035-Emrz71/blib/lib/DBIx/Class/Schema/Loader/Base.pm line 1370.
# Dumping manual schema for DBIXCSL_Test::Schema to directory t/var/common_dump ...
# Schema dump completed.
t/10_01sqlite_common.t .................. 294/294 # Looks like you failed 1 test of 294.
t/10_01sqlite_common.t .................. Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/294 subtests
(less 2 skipped subtests: 291 okay)
t/10_02mysql_common.t ................... skipped: You need to set the DBICTEST_MYSQL_DSN, DBICTEST_MYSQL_USER, and DBICTEST_MYSQL_PASS environment variables
t/10_03pg_common.t ...................... skipped: You need to set the DBICTEST_PG_DSN, _USER, and _PASS environment variables
t/10_04db2_common.t ..................... skipped: You need to set the DBICTEST_DB2_DSN, _USER, and _PASS environment variables
t/10_05ora_common.t ..................... skipped: You need to set the DBICTEST_ORA_DSN, _USER, and _PASS environment variables
t/10_06sybase_common.t .................. skipped: You need to set the DBICTEST_SYBASE_DSN, _USER, and _PASS environment variables
t/10_07mssql_common.t ................... skipped: You need to set the DBICTEST_MSSQL_DSN, _USER and _PASS and /or the DBICTEST_MSSQL_ODBC_DSN, _USER and _PASS environment variables
t/10_08sqlanywhere_common.t ............. skipped: You need to set the DBICTEST_SQLANYWHERE_DSN, _USER and _PASS and/or the DBICTEST_SQLANYWHERE_ODBC_DSN, _USER and _PASS environment variables
t/10_09firebird_common.t ................ skipped: You need to set the DBICTEST_FIREBIRD_DSN, _USER and _PASS and/or the DBICTEST_FIREBIRD_INTERBASE_DSN and/or the DBICTEST_FIREBIRD_ODBC_DSN environment variables
t/10_10informix_common.t ................ skipped: You need to set the DBICTEST_INFORMIX_DSN, _USER, and _PASS environment variables
t/10_11msaccess_common.t ................ skipped: You need to set the DBICTEST_MSACCESS_ODBC_DSN, and optionally _USER and _PASS and/or the DBICTEST_MSACCESS_ADO_DSN, and optionally _USER and _PASS environment variables
t/20invocations.t ....................... ok
t/21misc_fatal.t ........................ ok
t/22dump.t .............................. ok
t/23dumpmore.t .......................... 1/?
# Failed test 'DBICTest::Schema::_no_skip_load_external warning count'
# at t/lib/dbixcsl_dumper_tests.pm line 176.
# got: '1'
# expected: '0'
# stat(t/var/dump/DBICTest/Schema/_no_skip_load_external/Foo.pm): No such file or directory at .cpan/build/DBIx-Class-Schema-Loader-0.07035-Emrz71/blib/lib/DBIx/Class/Schema/Loader/Base.pm line 1370.
t/23dumpmore.t .......................... 95/? make: *** wait: No child processes. Stop.
UPDATE
As abraxxa suggested, I tried a newer perl version:
icsl8684> perl -v
This is perl 5, version 12, subversion 2 (v5.12.2) built for x86_64-linux
Also, I use local::lib because I don't have root permission.
I rerun the tests and they failed again.
However, I don't see that the perl version has changed in the cpan install proccess:
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/*.t t/backcompat/0.04006/*.t
t/01use.t ............................... ok
t/02pod.t ............................... ok
t/10_01sqlite_common.t .................. 6/294
# Failed test 'Correct number of warnings'
# at t/lib/dbixcsl_common_tests.pm line 323.
# got: '10'
# expected: '9'
# Column 'dbix_class_testcomponent' in table 'loader_test2' collides with an inherited method.
# See "COLUMN ACCESSOR COLLISIONS" in perldoc DBIx::Class::Schema::Loader::Base .
# Column 'dbix_class_testcomponentmap' in table 'loader_test2' collides with an inherited method.
The first line is using /usr/bin/perl instead of
~/.perl/perl
I have changes my $PATH to use the newer perl version and indeed it is (see the perl -v line).
I have feeling that something is messed up here. I also tried to install cpan[5]> install Devel::DProf and got the following error:
Can't load '~/.cpan/build/Devel-DProf-20110802.00-cJFc6O/blib/arch/auto/Devel/DProf/DProf.so' for module Devel::DProf: ~/.cpan/build/Devel-DProf-20110802.00-cJFc6O/blib/arch/auto/Devel/DProf/DProf.so: undefined symbol: get_cvn_flags at /usr/lib/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm line 230.
at dprof/test8_t line 0.
As you can see, it tries to load DynaLoader from /usr/lib/ instead of the local::lib I have.

The DBIx::Class maintainers go a large way to make it downward compatible to version Perl 5.8.1 which is declared in its META file. It might be that some other components like DBD::SQLite or DBIx::Class::Schema::Loader have a bug on your specific version (RedHat Enterprise Linux 4?).
DBIx::Class has even a section in its troubleshooting docs: Perl Performance Issues on Red Hat Systems
If you want to install your own Perl the recommended way is to use perlbrew. You don't even need root access, you can install it in your home directory, even multiple, completely separated installations of different or same versions, one for each app for example.

Related

cpan module install failed, no prereqs missing

Just trying to install a CPAN module, don't seem to be missing any prereqs, and can't seem to find anything that points to what I need to do to fix this. Can someone make sense of what the issue might be? I'd rather not force install unless I'm absolutely sure its maybe just an issue with the tests. I've looked at previous questions and the issue is almost always a missing prereq module but doesn't seem to be the case here.
C:\Users\zacha>cpan XML::Liberal
CPAN: CPAN::SQLite loaded ok (v0.219)
Database was generated on Fri, 04 Mar 2022 11:36:42 GMT
Running install for module 'XML::Liberal'
CPAN: Digest::SHA loaded ok (v6.02)
CPAN: Compress::Zlib loaded ok (v2.1)
Checksum for C:\STRAWB~1\cpan\sources\authors\id\M\MI\MIYAGAWA\XML-Liberal-0.30.tar.gz ok
CPAN: Archive::Tar loaded ok (v2.38)
CPAN: YAML::XS loaded ok (v0.82)
CPAN: CPAN::Meta::Requirements loaded ok (v2.140)
CPAN: Parse::CPAN::Meta loaded ok (v2.150010)
CPAN: CPAN::Meta loaded ok (v2.150010)
CPAN: Module::CoreList loaded ok (v5.20210123)
Configuring M/MI/MIYAGAWA/XML-Liberal-0.30.tar.gz with Makefile.PL
Checking if your kit is complete...
Looks good
Generating a gmake-style Makefile
Writing Makefile for XML::Liberal
Writing MYMETA.yml and MYMETA.json
MIYAGAWA/XML-Liberal-0.30.tar.gz
C:\Strawberry\perl\bin\perl.exe Makefile.PL -- OK
Running make for M/MI/MIYAGAWA/XML-Liberal-0.30.tar.gz
cp lib/XML/Liberal/Remedy/InvalidEncoding.pm blib\lib\XML\Liberal\Remedy\InvalidEncoding.pm
cp lib/XML/Liberal/Error.pm blib\lib\XML\Liberal\Error.pm
cp lib/XML/Liberal/LibXML.pm blib\lib\XML\Liberal\LibXML.pm
cp lib/XML/Liberal/Remedy/NestedCDATA.pm blib\lib\XML\Liberal\Remedy\NestedCDATA.pm
cp lib/XML/Liberal/Remedy/LowAsciiChars.pm blib\lib\XML\Liberal\Remedy\LowAsciiChars.pm
cp lib/XML/Liberal/Remedy/ControlCode.pm blib\lib\XML\Liberal\Remedy\ControlCode.pm
cp lib/XML/Liberal/Remedy/NotUTF8.pm blib\lib\XML\Liberal\Remedy\NotUTF8.pm
cp lib/XML/Liberal/Remedy/UnclosedHTML.pm blib\lib\XML\Liberal\Remedy\UnclosedHTML.pm
cp lib/XML/Liberal.pm blib\lib\XML\Liberal.pm
cp lib/XML/Liberal/Remedy/StandaloneAttribute.pm blib\lib\XML\Liberal\Remedy\StandaloneAttribute.pm
cp lib/XML/Liberal/Remedy/EntityRef.pm blib\lib\XML\Liberal\Remedy\EntityRef.pm
cp lib/XML/Liberal/Remedy/HTMLEntity.pm blib\lib\XML\Liberal\Remedy\HTMLEntity.pm
cp lib/XML/Liberal/Remedy/TrailingElements.pm blib\lib\XML\Liberal\Remedy\TrailingElements.pm
cp lib/XML/Liberal/Remedy/DeprecatedDTD.pm blib\lib\XML\Liberal\Remedy\DeprecatedDTD.pm
cp lib/XML/Liberal/Remedy/TrailingDoctype.pm blib\lib\XML\Liberal\Remedy\TrailingDoctype.pm
cp lib/XML/Liberal/Remedy/Declaration.pm blib\lib\XML\Liberal\Remedy\Declaration.pm
cp lib/XML/Liberal/Remedy/UndeclaredNS.pm blib\lib\XML\Liberal\Remedy\UndeclaredNS.pm
cp lib/XML/Liberal/Remedy/XHTMLEmptyTag.pm blib\lib\XML\Liberal\Remedy\XHTMLEmptyTag.pm
cp lib/XML/Liberal/Remedy/UnquotedAttribute.pm blib\lib\XML\Liberal\Remedy\UnquotedAttribute.pm
MIYAGAWA/XML-Liberal-0.30.tar.gz
C:\STRAWB~1\c\bin\gmake.exe -- OK
Running make test for MIYAGAWA/XML-Liberal-0.30.tar.gz
"C:\Strawberry\perl\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'inc', 'blib\lib', 'blib\arch')" t/*.t
t/00_compile.t ......... Possible precedence issue with control flow operator at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Test/Builder.pm line 917.
t/00_compile.t ......... ok
t/01_bad.t ............. Possible precedence issue with control flow operator at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Test/Builder.pm line 917.
t/01_bad.t ............. 1/?
# Failed test 'C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml'
# at t/01_bad.t line 28.
# got: 'parser error : Specification mandates value for attribute noshade at position 3:14 at t/01_bad.t line 27.
# '
# expected: ''
# Failed test 'created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isa XML::LibXML::Document'
# at t/01_bad.t line 29.
# created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isn't defined
Can't call method "toString" on an undefined value at t/01_bad.t line 33, <$fh> line 1.
# Looks like you failed 2 tests of 15.
# Looks like your test exited with 2 just after 15.
t/01_bad.t ............. Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/15 subtests
t/02_global.t .......... Possible precedence issue with control flow operator at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Test/Builder.pm line 917.
t/02_global.t .......... 7/?
# Failed test 'C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml'
# at t/02_global.t line 19.
# got: 'parser error : Specification mandates value for attribute noshade at position 3:14 at t/02_global.t line 18.
# '
# expected: ''
# Failed test 'created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isa XML::LibXML::Document'
# at t/02_global.t line 20.
# created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isn't defined
# Failed test 'C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml'
# at t/02_global.t line 25.
# got: 'parser error : Specification mandates value for attribute noshade at position 3:14 at t/02_global.t line 24.
# '
# expected: ''
# Failed test 'created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isa XML::LibXML::Document'
# at t/02_global.t line 26.
# created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isn't defined
# Failed test 'C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml'
# at t/02_global.t line 30.
# got: 'parser error : Specification mandates value for attribute noshade at position 3:14 at t/02_global.t line 29.
# '
# expected: ''
# Failed test 'created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isa XML::LibXML::Document'
# at t/02_global.t line 31.
# created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isn't defined
# Looks like you failed 6 tests of 144.
t/02_global.t .......... Dubious, test returned 6 (wstat 1536, 0x600)
Failed 6/144 subtests
t/03_global_destroy.t .. Possible precedence issue with control flow operator at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Test/Builder.pm line 917.
t/03_global_destroy.t .. 1/?
# Failed test 'C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml'
# at t/03_global_destroy.t line 24.
# got: 'parser error : Specification mandates value for attribute noshade at position 3:14 at t/03_global_destroy.t line 23.
# '
# expected: ''
# Failed test 'created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isa XML::LibXML::Document'
# at t/03_global_destroy.t line 25.
# created DOM node with C:/STRAWB~1/cpan/build/XML-Liberal-0.30-3/t/bad/BAD-atttibute.xml isn't defined
t/03_global_destroy.t .. 55/? # Looks like you failed 2 tests of 71.
t/03_global_destroy.t .. Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/71 subtests
t/04_sanity.t .......... Possible precedence issue with control flow operator at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Test/Builder.pm line 917.
Redundant argument in sprintf at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Spiffy.pm line 232.
Redundant argument in sprintf at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Spiffy.pm line 232.
Redundant argument in sprintf at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Spiffy.pm line 232.
Redundant argument in sprintf at C:\STRAWB~1\cpan\build\XML-Liberal-0.30-3\inc/Spiffy.pm line 232.
t/04_sanity.t .......... 1/? parser error : Specification mandates value for attribute nofoo at position 2:12 at t/04_sanity.t line 6.
# Looks like your test exited with 2 just after 12.
t/04_sanity.t .......... Dubious, test returned 2 (wstat 512, 0x200)
All 12 subtests passed
Test Summary Report
-------------------
t/01_bad.t (Wstat: 512 Tests: 15 Failed: 2)
Failed tests: 14-15
Non-zero exit status: 2
t/02_global.t (Wstat: 1536 Tests: 144 Failed: 6)
Failed tests: 19-24
Non-zero exit status: 6
t/03_global_destroy.t (Wstat: 512 Tests: 71 Failed: 2)
Failed tests: 10-11
Non-zero exit status: 2
t/04_sanity.t (Wstat: 512 Tests: 12 Failed: 0)
Non-zero exit status: 2
Files=5, Tests=243, 2 wallclock secs ( 0.11 usr + 0.06 sys = 0.17 CPU)
Result: FAIL
Failed 4/5 test programs. 10/243 subtests failed.
gmake: *** [Makefile:800: test_dynamic] Error 2
MIYAGAWA/XML-Liberal-0.30.tar.gz
C:\STRAWB~1\c\bin\gmake.exe test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
reports MIYAGAWA/XML-Liberal-0.30.tar.gz
Stopping: 'install' failed for 'XML::Liberal'.
There are two bugs in XML-Liberal-0.30.
Forcing the installation of the module is not recommended.
This will install the distribution:
wget https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA/XML-Liberal-0.30.tar.gz
tar xvzf XML-Liberal-0.30.tar.gz
cd XML-Liberal-0.30
perl -pe's/mandate/mandates?/' -i~ lib/XML/Liberal/Remedy/StandaloneAttribute.pm
perl -pe's/->extract_error\(\K\$\#/"\$\#"/' -i~ lib/XML/Liberal.pm
perl -I . Makefile.PL
make test
make install
The module's logic is basically the following:
For up to 15 times by default:
Try to parse the document using XML::LibXML while catching errors.
If no errors occurred,
Success (Return)
For each error message,
Apply a fix to the XML to attempt to resolve the error.
Failure.
The issue at hand is that libxml2 has changed some of its error message. It used to emit
parser error : Specification mandate value for attribute ...
But the grammar mistake was fixed.
parser error : Specification mandates value for attribute ...
The fix is simple. In lib/XML/Liberal/Remedy/StandaloneAttribute.pm, replace
my ($attr) = $error->message =~
/^parser error : Specification mandate value for attribute (\w+)/
or return 0;
with
my ($attr) = $error->message =~
/^parser error : Specification mandates? value for attribute (\w+)/
or return 0;
(I'm assuming that some versions of libxml2 returned Specification mandate value. A web search seems to confirm this.)
The second issue is in how it parses error messages. I'm not exactly sure what the broken code is trying to do, but it can be worked around by replacing
my $error = $self->extract_error($#, \$xml);
with
my $error = $self->extract_error("$#", \$xml);
in XML/Liberal.pm.

Strawberry Perl CPAN cannot find path specified

C:\MyPerl>cpan install Parallel::ForkManager
Loading internal logger. Log::Log4perl recommended for better logging
Reading '\c\Users\Locals\.cpan\Metadata'
Database was generated on Wed, 25 Jul 2018 22:55:14 GMT
Running install for module 'Parallel::ForkManager'
CPAN: Digest::SHA loaded ok (v6.02)
CPAN: Compress::Zlib loaded ok (v2.081)
Checksum for \c\Users\Locals\.cpan\sources\authors\id\Y\YA\YANICK\Parallel-ForkManager-1.20.tar.gz ok
The system cannot find the path specified.
Uncompressed \c\Users\Locals\.cpan\sources\authors\id\Y\YA\YANICK\Parallel-ForkManager-1.20.tar.gz successfully
Using Tar:/usr/bin/tar xf "Parallel-ForkManager-1.20.tar":
The system cannot find the path specified.
Couldn't untar Parallel-ForkManager-1.20.tar: child exited with value 1
CPAN: YAML loaded ok (v1.26)
YANICK/Parallel-ForkManager-1.20.tar.gz
Had problems unarchiving. Please build manually
What am I doing wrong? I have uninstalled and reinstalled Strawberry Perl multiple times, used the MSI installer, and now im trying to zip file. Why the hell is it creating a folder on my C drive called "C"? "C:\c\Users\Locals.cpan\"
I'm sad to be coming with an answer so late, but I ran into the exact same problem and, after some tinkering, have figured it out.
Notice something familiar about that path syntax? It's the one used by MSYS/MinGW/Git Bash. What happened is that, on MinGW, I replaced my home folder with a symlink to my Windows home folder in /c/Users/<username>/.cpan. Hence, when I launched CPAN in MinGW, it created my configuration in /c/Users/<username>/.cpan, and filled it with with paths in this format.
Now, from Strawberry Perl's point of view, this means I have an existing CPAN configuration in C:\Users\<username>\.cpan. Although this is not where CPAN for Strawberry Perl writes its configuration (at least not by default), if a CPAN configuration exists in this path, it will read and write to it instead of the default location. Of course, none of the paths in this configuration makes sense in a Windows context.
Therefore:
If you use MinGW, Git Bash, Cygwin or any other UNIX-like environment for
Windows and configured it to use your Windows home folder as your UNIX home folder, undo this configuration.
Rename, move, or if you're sure you don't need it anymore, delete
C:\Users\<username>\.cpan. You can probably move this directory from your Windows home folder to your UNIX home folder to as to preserve the configuration and modules in your UNIX-like environment. I would advise testing it out.
Run CPAN in Strawberry Perl again. It will auto-configure itself properly.
Here is sample output with the latest version of Strawberry Perl x64 which appears to have been successful:
C:\Strawberry\perl\bin>cpan install Parallel::ForkManager
Loading internal logger. Log::Log4perl recommended for better logging
CPAN: CPAN::SQLite loaded ok (v0.211)
CPAN: LWP::UserAgent loaded ok (v6.34)
Fetching with LWP:
http://cpan.strawberryperl.com/authors/01mailrc.txt.gz
CPAN: YAML::XS loaded ok (v0.70)
Fetching with LWP:
http://cpan.strawberryperl.com/modules/02packages.details.txt.gz
Fetching with LWP:
http://cpan.strawberryperl.com/modules/03modlist.data.gz
Creating database file ...
Done!
Running install for module 'Parallel::ForkManager'
Fetching with LWP:
http://cpan.strawberryperl.com/authors/id/Y/YA/YANICK/Parallel-ForkManager-2.
tar.gz
CPAN: Digest::SHA loaded ok (v6.02)
Fetching with LWP:
http://cpan.strawberryperl.com/authors/id/Y/YA/YANICK/CHECKSUMS
CPAN: Compress::Zlib loaded ok (v2.081)
Checksum for C:\STRAWB~1\cpan\sources\authors\id\Y\YA\YANICK\Parallel-ForkMan
r-2.02.tar.gz ok
CPAN: Archive::Tar loaded ok (v2.30)
CPAN: CPAN::Meta::Requirements loaded ok (v2.140)
CPAN: Parse::CPAN::Meta loaded ok (v2.150010)
CPAN: CPAN::Meta loaded ok (v2.150010)
CPAN: Module::CoreList loaded ok (v5.20180622)
Configuring Y/YA/YANICK/Parallel-ForkManager-2.02.tar.gz with Makefile.PL
Checking if your kit is complete...
Looks good
Generating a gmake-style Makefile
Writing Makefile for Parallel::ForkManager
Writing MYMETA.yml and MYMETA.json
YANICK/Parallel-ForkManager-2.02.tar.gz
C:\Strawberry\perl\bin\perl.exe Makefile.PL -- OK
Running make for Y/YA/YANICK/Parallel-ForkManager-2.02.tar.gz
cp lib/Parallel/ForkManager/Child.pm blib\lib\Parallel\ForkManager\Child.pm
cp lib/Parallel/ForkManager.pm blib\lib\Parallel\ForkManager.pm
YANICK/Parallel-ForkManager-2.02.tar.gz
C:\STRAWB~1\c\bin\gmake.exe -- OK
Running make test
"C:\Strawberry\perl\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness"
e" "undef *Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')"
*.t
t/00-compile.t ............ ok
t/00-load.t ............... 1/4 # time: 1 seconds
t/00-load.t ............... 2/4 # time: 21 seconds
# time: 0 seconds
# time: 2 seconds
t/00-load.t ............... ok
t/00-report-prereqs.t ..... #
# Versions for all modules listed in MYMETA.json (including optional ones):
#
# === Configure Requires ===
#
# Module Want Have
# ------------------- ---- ----
# ExtUtils::MakeMaker any 7.34
#
# === Build Requires ===
#
# Module Want Have
# ------------------- ---- ----
# ExtUtils::MakeMaker any 7.34
#
# === Test Requires ===
#
# Module Want Have
# ------------------- ---- --------
# ExtUtils::MakeMaker any 7.34
# File::Spec any 3.74
# IO::Handle any 1.39
# IPC::Open3 any 1.20
# Test::More 0.94 1.302136
# Test::Warn any 0.35
#
# === Test Recommends ===
#
# Module Want Have
# ---------- -------- --------
# CPAN::Meta 2.120900 2.150010
#
# === Runtime Requires ===
#
# Module Want Have
# ---------- ---- --------
# Carp any 1.50
# File::Path any 2.15
# File::Spec any 3.74
# File::Temp any 0.2304
# Moo any 2.003004
# Moo::Role any 2.003004
# POSIX any 1.84
# Storable any 3.11
# strict any 1.11
# warnings any 1.42
#
t/00-report-prereqs.t ..... ok
t/01-utf8-all.t ........... skipped: This is a bug in perl itself on Windows
t/02-callback.t ........... # This test can take 10-20 seconds, please wait.
rted at Wed Oct 17 12:28:28 2018
t/02-callback.t ........... ok
t/03-callback-data.t ...... # This test can take 2-6 seconds, please wait. St
ed at Wed Oct 17 12:28:45 2018
t/03-callback-data.t ...... ok
t/basic-methods.t ......... ok
t/changing-pids.t ......... ok
t/start_child.t ........... ok
t/waitpid-conflict.t ...... # code outside of P::FM stole -3648
child process '-3648' disappeared. A call to `waitpid` outside of Parallel::F
Manager might have reaped it.
t/waitpid-conflict.t ...... ok
t/waitpid-waitonechild.t .. # code outside of P::FM stole -5312
t/waitpid-waitonechild.t .. ok
t/waitpid_blocking.t ...... ok
All tests successful.
Test Summary Report
-------------------
t/waitpid-conflict.t (Wstat: 0 Tests: 2 Failed: 0)
TODO passed: 1-2
t/waitpid-waitonechild.t (Wstat: 0 Tests: 3 Failed: 0)
TODO passed: 2-3
Files=12, Tests=28, 70 wallclock secs ( 0.09 usr + 0.00 sys = 0.09 CPU)
Result: PASS
YANICK/Parallel-ForkManager-2.02.tar.gz
C:\STRAWB~1\c\bin\gmake.exe test -- OK
Running make install
Installing C:\STRAWB~1\perl\site\lib\Parallel\ForkManager.pm
Installing C:\STRAWB~1\perl\site\lib\Parallel\ForkManager\Child.pm
Appending installation info to C:\STRAWB~1\perl\lib/perllocal.pod
YANICK/Parallel-ForkManager-2.02.tar.gz
C:\STRAWB~1\c\bin\gmake.exe install UNINST=1 -- OK
I think the problem may be you're just not running cpan from your \perl\bin directory.
I installed via the .msi installer to a custom location, but for some reason the path didn't get reconfigured internally. Cpan continued downloading to C:\straberry, even if there was no Perl installation there.
Luckily, this is what the relocation.pl.bat is for. Downloading the .zip distribution, extracting the batch-file to my Perl installation and running it solved the Problem.
Read the README file that comes with the Perl installation for more information.

trouble installing Tkx perl module in Ubuntu 14.04

In order to install a package called PrimerMapper for designing primers on Ubuntu 14.04, I need to install a perl module called Tkx but facing trouble in installing it. So, kindly assist me in resolving this bug.
For your quick and easy reference, I am pasting complete commands of installation. Thanks a lot
**adnan#adnan-Inspiron-N5110[Tkx-1.09]** sudo perl Makefile.PL
Writing Makefile for Tkx
Writing MYMETA.yml and MYMETA.json
**adnan#adnan-Inspiron-N5110[Tkx-1.09]** sudo make
Skip blib/lib/Tkx/Tutorial.pod (unchanged)
Skip blib/lib/Tkx.pm (unchanged)
Skip blib/lib/Tkx/MegaConfig.pm (unchanged)
Skip blib/lib/Tkx/LabEntry.pm (unchanged)
cp tkx-prove blib/script/tkx-prove
/usr/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/tkx-prove
cp tkx-ed blib/script/tkx-ed
/usr/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/tkx-ed
Manifying blib/man1/tkx-ed.1p
Manifying blib/man3/Tkx::MegaConfig.3pm
Manifying blib/man3/Tkx::LabEntry.3pm
Manifying blib/man3/Tkx::Tutorial.3pm
Manifying blib/man3/Tkx.3pm
**adnan#adnan-Inspiron-N5110[Tkx-1.09]** sudo make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/LabEntry.t ...... 1/2 (in cleanup) Can't call method "DeleteCommand" on an undefined value at /usr/local/lib/perl/5.18.2/Tcl.pm line 655 during global destruction.
t/LabEntry.t ...... ok
t/mega-config.t ... ok
t/mega.t .......... ok
t/nul-char.t ...... ok
t/tcl-callback.t .. 1/7 (in cleanup) Can't call method "DeleteCommand" on an undefined value at /usr/local/lib/perl/5.18.2/Tcl.pm line 655 during global destruction.
t/tcl-callback.t .. ok
t/tcl.t ........... 1/18 # Test 18 got: "Tcl error 'Foo at /usr/local/lib/perl/5.18.2/Tcl.pm line 585.\n' while invoking scalar result call:\n\t\"error Foo\" at /usr/local/lib/perl/5.18.2/Tcl.pm line 588.\n\tTcl::call('Tcl=SCALAR(0x1b2ce48)', 'error', 'Foo') called at /media/windows/NGS/GATK_FINAL_PIPELINE/PrimerMapper-master/Tkx-1.09/blib/lib/Tkx.pm line 329\n\teval {...} called at /media/windows/NGS/GATK_FINAL_PIPELINE/PrimerMapper-master/Tkx-1.09/blib/lib/Tkx.pm line 329\n\tTkx::i::call('error', 'Foo') called at /media/windows/NGS/GATK_FINAL_PIPELINE/PrimerMapper-master/Tkx-1.09/blib/lib/Tkx.pm line 51\n\tTkx::AUTOLOAD('Foo') called at t/tcl.t line 38\n\teval {...} called at t/tcl.t line 38\n" (t/tcl.t at line 39)
# Expected: "Foo at t/tcl.t line 38.\n"
# t/tcl.t line 39 is: ok($#, "Foo at #{[__FILE__]} line #{[__LINE__ - 1]}.\n");
t/tcl.t ........... Failed 1/18 subtests
t/tk.t ............ 12/12 (in cleanup) Can't call method "DeleteCommand" on an undefined value at /usr/local/lib/perl/5.18.2/Tcl.pm line 655 during global destruction.
t/tk.t ............ ok
t/utf8.t .......... ok
Test Summary Report
-------------------
t/tcl.t (Wstat: 0 Tests: 18 Failed: 1)
Failed test: 18
Files=8, Tests=54, 9 wallclock secs ( 0.15 usr 0.03 sys + 1.85 cusr 0.31 csys = 2.34 CPU)
Result: FAIL
Failed 1/8 test programs. 1/54 subtests failed.
make: *** [test_dynamic] Error 255
GAAS/Tkx-1.09.tar.gz
/usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
reports GAAS/Tkx-1.09.tar.gz
Running make install
make test had returned bad status, won't install without force
Failed during this command:
GAAS/Tkx-1.09.tar.gz : make_test NO
The error is that the tests of the module don't pass successfully.
One thing I would try first is to try to install the module with cpan or cpanminus (cpan Tkx or cpanm Tkx). You (or the Makefile.PL) may have missed something that could be causing this error.
I see you already opened a bug report on CPAN. You can see in cpantesters that this module has the tests broken (you could check with your particular Perl version) and there is also another bug report from 5 years ago reporting broken tests for the very same version that's currently on CPAN (1.09).
Considering this I think your options is to skip the tests and see if it works for your purposes.
I recently adopted Tkx and published release 1.10, which allows installation to proceed despite the t/tcl.t test 18 failure.
The test failure appears to have been caused by unexpected but minor changes to error message formatting in newer Tcl.pm. Pending the issue actually being fixed, it is not something which Tkx should abort installation over.
There's already a packaged version of Tkx for Ubuntu, so all it should take to get Tkx and any of its dependencies is:
sudo apt-get install libperl-tkx

Installing perl DBD:Pg on Mac

I run:
perl -MCPAN -e 'install Bundle::DBD::Pg'
it asks:
Path to pg_config?
I say:
/Library/PostgreSQL/9.3/bin/pg_config
it runs... and the last lines are:
Test Summary Report
-------------------
t/02attribs.t (Wstat: 256 Tests: 249 Failed: 1)
Failed test: 23
Non-zero exit status: 1
Files=15, Tests=1691, 29 wallclock secs ( 0.23 usr 0.05 sys + 5.29 cusr 1.65 csys = 7.22 CPU)
Result: FAIL
Failed 1/15 test programs. 1/1691 subtests failed.
make: *** [test_dynamic] Error 255
TURNSTEP/DBD-Pg-2.19.3.tar.gz
/usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
reports TURNSTEP/DBD-Pg-2.19.3.tar.gz
Running make install
make test had returned bad status, won't install without force
I saw a DBI_USER config turn to jgp (my login) which i also created in the DB.
Any hint on where I should start?
As requested, here is the full test result:
Running make test
PGINITDB="/Library/PostgreSQL/9.3/bin/initdb" PERL_DL_NONLAZY=1 /usr/bin/perl "- MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_signature.t .... skipped: Set the environment variable TEST_SIGNATURE to enable this test
t/00basic.t ......... ok
t/01connect.t ....... Please wait, creating new database for testing
t/01connect.t ....... 1/15 #
# DBI Version 1.631
# DBD::Pg Version 2.19.3
# Perl Version 5.16.2
# OS darwin
# PostgreSQL (compiled) 90302
# PostgreSQL (target) 90302
# PostgreSQL (reported) PostgreSQL 9.3.2 on x86_64-apple-darwin, compiled by i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.9.00), 64-bit
# Default port 5432
# DBI_DSN dbi:Pg:db="postgres";port=5440;host=<pwd>/dbdpg_test_database/data/socket
# DBI_USER jgp
# Test schema dbd_pg_testschema
# LANG C
# array_nulls on
# backslash_quote safe_encoding
# client_encoding UTF8
# server_encoding UTF8
# standard_conforming_strings on
# Adjusted: initdb
t/01connect.t ....... ok
t/01constants.t ..... ok
t/02attribs.t ....... 1/249
# Failed test 'DB handle attribute "PrintWarn" shows warnings when on'
# at t/02attribs.t line 263.
# ''
# doesn't match '(?^:dbd_pg_test_temp)'
(in cleanup) DBD::Pg::st DESTROY failed: no connection to the server at t/02attribs.t line 1558.
# Looks like you failed 1 test of 249.
t/02attribs.t ....... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/249 subtests
t/03dbmethod.t ...... ok
t/03smethod.t ....... ok
t/04misc.t .......... 1/70 # Checking pg_st_split_statement. This may take a while...
t/04misc.t .......... ok
t/06bytea.t ......... ok
t/07copy.t .......... ok
t/08async.t ......... ok
t/09arrays.t ........ ok
t/12placeholders.t .. ok
t/20savepoints.t .... ok
t/99cleanup.t ....... 1/1 Removing test database directory
t/99cleanup.t ....... ok
I must admit I am new to perl and PostgreSQL.
It looks like this has been fixed but not yet included in a new release. Apparently, "Postgres got less chatty in 9.3."
There's a developer release available on CPAN (v2.20.1_6). To install:
cpan TURNSTEP/DBD-Pg-2.20.1_6.tar.gz
or you could pull the latest source with git.
this worked for me, I only had to answer the pg_config question, to which my answer was:
/Applications/Postgres.app/Contents/Versions/9.5/bin/pg_config

Why this error "Can't locate object method new"?

I am trying to use HTML::WikiConverter::MediaWiki which I have installed using yum install perl-HTML-WikiConverter-MediaWiki.noarch.
According to the perldoc should I be able to
use HTML::WikiConverter;
my $wc = new HTML::WikiConverter( dialect => 'MediaWiki' );
but then I get
Can't locate HTML/WikiConverter.pm in #INC (#INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at ./test.pl line 3.
BEGIN failed--compilation aborted at ./test.pl line 3.
If I try
use HTML::WikiConverter::MediaWiki;
my $wc = new HTML::WikiConverter( dialect => 'MediaWiki' );
then I get
Can't locate object method "new" via package "HTML::WikiConverter" at ./test.pl line 4.
If I try
use HTML::WikiConverter::MediaWiki;
my $wc = new HTML::WikiConverter::MediaWiki( dialect => 'MediaWiki' );
then I get
Can't locate object method "new" via package "HTML::WikiConverter::MediaWiki" at ./test.pl line 4.
Question
Can anyone see what's wrong?
Update
[root#rt ~]# cpan HTML::WikiConverter
Reading '/root/.cpan/Metadata'
Database was generated on Fri, 09 Mar 2012 16:12:01 GMT
Running install for module 'HTML::WikiConverter'
Running make for D/DI/DIBERRI/HTML-WikiConverter-0.68.tar.gz
Checksum for /root/.cpan/sources/authors/id/D/DI/DIBERRI/HTML-WikiConverter-0.68.tar.gz ok
CPAN.pm: Building D/DI/DIBERRI/HTML-WikiConverter-0.68.tar.gz
Checking if your kit is complete...
Looks good
Writing Makefile for HTML::WikiConverter
Writing MYMETA.yml and MYMETA.json
cp lib/HTML/WikiConverter.pm blib/lib/HTML/WikiConverter.pm
cp lib/HTML/WikiConverter/Normalizer.pm blib/lib/HTML/WikiConverter/Normalizer.pm
cp lib/HTML/WikiConverter/WebApp.pm blib/lib/HTML/WikiConverter/WebApp.pm
cp lib/HTML/WikiConverter/Dialects.pod blib/lib/HTML/WikiConverter/Dialects.pod
cp bin/html2wiki blib/script/html2wiki
/usr/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/html2wiki
Manifying blib/man1/html2wiki.1
Manifying blib/man3/HTML::WikiConverter.3pm
Manifying blib/man3/HTML::WikiConverter::Normalizer.3pm
Manifying blib/man3/HTML::WikiConverter::Dialects.3pm
Manifying blib/man3/HTML::WikiConverter::WebApp.3pm
DIBERRI/HTML-WikiConverter-0.68.tar.gz
/usr/bin/make -- OK
'YAML' not installed, will not store persistent state
Running make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00-load.t ........... 1/1 # Testing HTML::WikiConverter 0.68, Perl 5.008008, /usr/bin/perl
t/00-load.t ........... ok
t/01-normalizer.t ..... ok
t/01-wikiconverter.t .. 1/53 request for <http://diberri.dyndns.org/wikipedia/html2wiki-old/test.html> failed at t/01-wikiconverter.t line 162
# Looks like you planned 53 tests but ran 35.
# Looks like your test exited with 22 just after 35.
t/01-wikiconverter.t .. Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 18/53 subtests
t/boilerplate.t ....... ok
t/pod-coverage.t ...... ok
t/pod.t ............... ok
Test Summary Report
-------------------
t/01-wikiconverter.t (Wstat: 5632 Tests: 35 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 53 tests but ran 35.
Files=6, Tests=53, 1 wallclock secs ( 0.06 usr 0.04 sys + 0.60 cusr 0.12 csys = 0.82 CPU)
Result: FAIL
Failed 1/6 test programs. 0/53 subtests failed.
make: *** [test_dynamic] Error 255
DIBERRI/HTML-WikiConverter-0.68.tar.gz
/usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
reports DIBERRI/HTML-WikiConverter-0.68.tar.gz
Running make install
make test had returned bad status, won't install without force
[root#rt ~]#
You don't have HTML::WikiConverter installed. So, install it. From the command line, do
cpan HTML::WikiConverter
and not only will HTML::WikiConverter be installed, but any missing prerequisites should be installed as well.
Also, depending your user permissions, you may need to run that command as root (ie sudo cpan HTML::WikiConverter).
It sounds like you don't have the base behavior HTML::WikiConverter installed in a place where you need it. I don't know why the use base in HTML::WikiConverter::MediaWiki isn't failing, though. HTML::WikiConverter is a separate distribution from HTML::WikiConverter::MediaWiki and HWM uses HW's constructor, so it makes sense that if you can't load this module, Perl does not recognize a dispatch for new.
When you ran yum install perl-HTML-WikiConverter-MediaWiki.noarch did you get any output that mentioned installing perl-HTML-WikiConverter?
What output do you get from running rpm -q perl-HTML-WikiConverter and rpm -q perl-HTML-WikiConverter-MediaWiki.
Which version of Perl are you running (perl -v), where is it installed (which perl) and how was it installed (using yum or by downloading source code and compiling it)?
I suspect your system is getting confused between yum-installed CPAN modules and cpan-install CPAN modules. It's never a good idea to mix the two on the same system. If you want to use the system version of Perl then only install CPAN modules using yum. If you want to install CPAN modules using cpan (or cpanp or cpanm) then build your own version of Perl and install it away from the standard Perl location.