ddclientでエラー

yumでシステムをアップデート後、ddclientでエラーが発生し、起動しなくなりました。ここではその際の対処を記録します。

PerlのSSLは問題ばかりかぁ。

※2014/11/15 再発。同様の対処で解決(ddclient-3.8.2.tar.bz2 / Scalar-List-Utils-1.41.tar.gz)

エラー

エラー内容は以下のとおり

FATAL:    Error loading the Perl module IO::Socket::SSL needed for SSL connect.
FATAL:     On Debian, the package libio-socket-ssl-perl must be installed.
FATAL:     On Red Hat, the package perl-IO-Socket-SSL must be installed.

対処

yum でperl-IO-Socket-SSLをインストールしようとしても、最新がインストールされているとのたまわる。

# yum update perl-IO-Socket-SSL
Loaded plugins: fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
* base: ftp.jaist.ac.jp
* extras: ftp.jaist.ac.jp
* rpmforge: ftp.kddilabs.jp
* updates: ftp.jaist.ac.jp
129 packages excluded due to repository priority protections
Skipping security plugin, no data
Setting up Update Process
No Packages marked for Update
#

早速ググル

if you get one of these errors installing any package using CPAN:
Undefined subroutine &Scalar::Util::readonly called at /usr/lib/perl5/site_perl/5.8.8/IO/Uncompress/Base.pm line 1104
and
Undefined subroutine &IO::Uncompress::Base::readonly called at /usr/lib/perl5/site_perl/5.8.8/IO/Uncompress/Base.pm line 1075.
follow these steps to fix it:
search for Scalar::Util at http://search.cpan.org/
select and download: Scalar-List-Utils in my case it was this version:
http://search.cpan.org/~pevans/Scalar-List-Utils-1.32/
unpack the tar.gz file
cd into the package root-directory
build the package by command-tripple : gmake, gmake test, gmake install
once you complete this succsessfully
you may run CPAN-Shell again and install your needed packages!
have fun. 

実行してみる

# cd /opt
# tar zxvf /tmp/Scalar-List-Utils-1.32.tar.gz
Scalar-List-Utils-1.35/
Scalar-List-Utils-1.35/MYMETA.yml
Scalar-List-Utils-1.35/lib/
Scalar-List-Utils-1.35/lib/Scalar/
Scalar-List-Utils-1.35/lib/Scalar/Util.pm
Scalar-List-Utils-1.35/lib/List/
Scalar-List-Utils-1.35/lib/List/Util/
Scalar-List-Utils-1.35/lib/List/Util/XS.pm
Scalar-List-Utils-1.35/lib/List/Util.pm
Scalar-List-Utils-1.35/ListUtil.xs
Scalar-List-Utils-1.35/Changes
Scalar-List-Utils-1.35/META.json
Scalar-List-Utils-1.35/README
Scalar-List-Utils-1.35/ppport.h
Scalar-List-Utils-1.35/META.yml
Scalar-List-Utils-1.35/MANIFEST
Scalar-List-Utils-1.35/multicall.h
Scalar-List-Utils-1.35/MYMETA.json
Scalar-List-Utils-1.35/t/
Scalar-List-Utils-1.35/t/shuffle.t
Scalar-List-Utils-1.35/t/maxstr.t
Scalar-List-Utils-1.35/t/weak.t
Scalar-List-Utils-1.35/t/any-all.t
Scalar-List-Utils-1.35/t/reftype.t
Scalar-List-Utils-1.35/t/dualvar.t
Scalar-List-Utils-1.35/t/minstr.t
Scalar-List-Utils-1.35/t/refaddr.t
Scalar-List-Utils-1.35/t/00version.t
Scalar-List-Utils-1.35/t/blessed.t
Scalar-List-Utils-1.35/t/tainted.t
Scalar-List-Utils-1.35/t/sum.t
Scalar-List-Utils-1.35/t/max.t
Scalar-List-Utils-1.35/t/min.t
Scalar-List-Utils-1.35/t/getmagic-once.t
Scalar-List-Utils-1.35/t/product.t
Scalar-List-Utils-1.35/t/stack-corruption.t
Scalar-List-Utils-1.35/t/openhan.t
Scalar-List-Utils-1.35/t/sum0.t
Scalar-List-Utils-1.35/t/proto.t
Scalar-List-Utils-1.35/t/first.t
Scalar-List-Utils-1.35/t/multicall-refcount.t
Scalar-List-Utils-1.35/t/isvstring.t
Scalar-List-Utils-1.35/t/reduce.t
Scalar-List-Utils-1.35/t/lln.t
Scalar-List-Utils-1.35/t/readonly.t
Scalar-List-Utils-1.35/t/pair.t
Scalar-List-Utils-1.35/Makefile.PL
# cd Scalar-List-Utils-1.35
# perl Makefile.PL
Checking if your kit is complete...
Looks good
Writing Makefile for List::Util
# make
cp lib/List/Util/XS.pm blib/lib/List/Util/XS.pm
cp lib/List/Util.pm blib/lib/List/Util.pm
cp lib/Scalar/Util.pm blib/lib/Scalar/Util.pm
/usr/bin/perl /usr/lib/perl5/5.8.8/ExtUtils/xsubpp -typemap /usr/lib/perl5/5.8.8/ExtUtils/typemap ListUtil.xs > ListUtil.xsc && mv ListUtil.xsc ListUtil.c
gcc -c   -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables   -DVERSION=\"1.35\" -DXS_VERSION=\"1.35\" -fPIC "-I/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE"  -DPERL_EXT ListUtil.c
ListUtil.xs: In function ‘XS_List__Util_pairmap’:
ListUtil.xs:626: 警告: unused variable ‘b’
ListUtil.xs:625: 警告: unused variable ‘a’
ListUtil.xs:668: 警告: unused variable ‘b’
ListUtil.xs:667: 警告: unused variable ‘a’
ListUtil.c: In function ‘XS_List__Util_min’:
ListUtil.xs:76: 警告: ‘retval’ may be used uninitialized in this function
Running Mkbootstrap for List::Util ()
chmod 644 Util.bs
rm -f blib/arch/auto/List/Util/Util.so
gcc  -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -L/usr/local/lib ListUtil.o  -o blib/arch/auto/List/Util/Util.so      \
\
chmod 755 blib/arch/auto/List/Util/Util.so
cp Util.bs blib/arch/auto/List/Util/Util.bs
chmod 644 blib/arch/auto/List/Util/Util.bs
Manifying blib/man3/List::Util::XS.3pm
Manifying blib/man3/List::Util.3pm
Manifying blib/man3/Scalar::Util.3pm
# make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00version.............ok
t/any-all...............ok
t/blessed...............ok
t/dualvar...............ok
20/41 skipped: Requires threads::shared v1.42 or later
t/first.................ok
2/24 skipped: Poor man's MULTICALL can't cope
t/getmagic-once.........ok
t/isvstring.............ok
t/lln...................ok
t/max...................ok
t/maxstr................ok
t/min...................ok
t/minstr................ok
t/multicall-refcount....ok
t/openhan...............ok
t/pair..................ok
t/product...............ok
t/proto.................ok
t/readonly..............ok
t/reduce................ok
2/31 skipped: Poor man's MULTICALL can't cope
t/refaddr...............ok
t/reftype...............ok
t/shuffle...............ok
t/stack-corruption......ok
t/sum...................ok
t/sum0..................ok
t/tainted...............ok
t/weak..................ok
All tests successful, 24 subtests skipped.
Files=27, Tests=372,  2 wallclock secs ( 1.40 cusr +  0.35 csys =  1.75 CPU)
# make install
Installing /usr/lib/perl5/5.8.8/i386-linux-thread-multi/auto/List/Util/Util.so
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /usr/lib/perl5/5.8.8/i386-linux-thread-multi/Scalar/Util.pm
Installing /usr/lib/perl5/5.8.8/i386-linux-thread-multi/List/Util.pm
Installing /usr/lib/perl5/5.8.8/i386-linux-thread-multi/List/Util/XS.pm
Installing /usr/share/man/man3/Scalar::Util.3pm
Installing /usr/share/man/man3/List::Util.3pm
Installing /usr/share/man/man3/List::Util::XS.3pm
Writing /usr/lib/perl5/5.8.8/i386-linux-thread-multi/auto/List/Util/.packlist
Appending installation info to /usr/lib/perl5/5.8.8/i386-linux-thread-multi/perllocal.pod
#

ddclientの再起動で確認

早速確認

# service ddclient restart
Shutting down ddclient: ddclient is not running
Starting ddclient: [ OK ]
# service ddclient status
ddclient (pid 16275) を実行中...
#

めでたし、めでたし。


トップ   編集 編集(GUI) 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-11-16 (日) 03:10:32 (3452d)