2012-03-09 21 views
0

yum install perl-HTML-WikiConverter-MediaWiki.noarchを使用してインストールしたHTML::WikiConverter::MediaWikiを使用しようとしています。なぜこのエラー "オブジェクトメソッドnewを見つけることができません"?

perldocによると、私は

use HTML::WikiConverter; 
my $wc = new HTML::WikiConverter(dialect => 'MediaWiki'); 

にできるはずですが、その後、私は

use HTML::WikiConverter::MediaWiki; 
my $wc = new HTML::WikiConverter(dialect => 'MediaWiki'); 

をしようとした場合、私は

Can't locate object method "new" via package "HTML::WikiConverter" at ./test.pl line 4. 
012を得る

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. 

を取得

私は

use HTML::WikiConverter::MediaWiki; 
my $wc = new HTML::WikiConverter::MediaWiki(dialect => 'MediaWiki'); 

をしようとした場合、私は

Can't locate object method "new" via package "HTML::WikiConverter::MediaWiki" at ./test.pl line 4. 

質問

誰が間違っているものを見ることができますを取得しますか?

更新

[[email protected] ~]# 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 
[[email protected] ~]# 

答えて

1

あなたはHTML::WikiConverterがインストールされていません。それで、それをインストールしてください。コマンドラインから、

cpan HTML::WikiConverter 

を行うと、HTML::WikiConverterインストールされますが、欠落している前提条件が同様にインストールする必要がないだけ。

また、ユーザー権限によっては、root(つまりsudo cpan HTML::WikiConverter)でそのコマンドを実行する必要があります。

+0

私はあなたのコマンドを試してみると、私が得た出力を使って投稿を更新しました。何らかの理由で失敗します。 –

+1

Hmmm、それは[テストの1つがデッドリンクへの接続を伴う]ように見えます(http://www.perlmonks.org/?node_id=940890)。 'sudo cpan -f HTML :: WikiConverter'を試してインストールを強制してください。 –

1

あなたが必要とする場所に基本動作HTML::WikiConverterがインストールされていないようです。しかし、のHTML::WikiConverter::MediaWikiがなぜ失敗しているのか分かりません。 HTML::WikiConverterHTML::WikiConverter::MediaWikiとは別のディストリビューションであり、HWMはHWのコンストラクタを使用しているため、このモジュールをロードできない場合、Perlはnewのディスパッチを認識しません。

+0

'rpm'コマンドで'/usr/lib/perl5/vendor_perl/5.8.8/HTML/WikiConverter/MediaWiki.pm'にインストールされているのが分かります。私は何とか私のスクリプトにそこからモジュールを読み込むべきだと書くことはできますか? –

+0

@SandraSchlichting、yes 'use lib '/usr/lib/perl5/vendor_perl/5.8.8';' - しかしあなたはそのアドホックになりたいですか?同じパスを '$ PERL5LIB'変数に追加することもできますし、perl呼び出しの' -I'スイッチとして追加することもできます。あなたの特定のニーズは最良の方法を最もよく判断することができます。 – Axeman

+0

動作しませんでした。まだ同じエラー。 –

0

yum install perl-HTML-WikiConverter-MediaWiki.noarchを実行したときに、perl-HTML-WikiConverterのインストールに関する出力が表示されましたか?

rpm -q perl-HTML-WikiConverterrpm -q perl-HTML-WikiConverter-MediaWikiから何の出力を得ますか?

実行中のPerlのバージョン(perl -v)、インストール先(which perl)、インストール方法(yumやソースコードのダウンロードとコンパイル)

yumがインストールされているCPANモジュールとcpan-install CPANモジュールの間でシステムが混乱している可能性があります。同じシステム上で2つを混在させることは決して良い考えではありません。 Perlのシステムバージョンを使用する場合は、yumを使用してCPANモジュールのみをインストールしてください。 cpan(またはcpanpまたはcpanm)を使用してCPANモジュールをインストールする場合は、独自のバージョンのPerlをビルドし、標準のPerlの場所から離れた場所にインストールします。

関連する問題