4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

plenv でハマった

Last updated at Posted at 2016-09-20

VirtualBox 上の CentOS7plenv install-cpanm しようとしたら、肝心の cpanm${HOME}/perl5/bin 以下に入る。

$ env | grep PERL
PERL5LIB=/home/bunzaemon/perl5/lib/perl5:
PERL_MB_OPT=--install_base /home/bunzaemon/perl5
PERL_LOCAL_LIB_ROOT=:/home/bunzaemon/perl5
PERL_MM_OPT=INSTALL_BASE=/home/bunzaemon/perl5

調べたら、身に覚えのない /etc/profile.d/perl-homedir.sh なるファイルが原因。

$ cat /etc/profile.d/perl-homedir.sh
(略)
        eval `perl -Mlocal::lib`
(略)

デフォルトで入っていたのか、後から入れたのについてきたのか?
検証する気力もわかない。
何に使ってるかわからないから、一応残して、手元の *shrc の先頭に

unset PERL5LIB
unset PERL_MB_OPT
unset PERL_LOCAL_LIB_ROOT
unset PERL_MM_OPT

を書いて対処

#追加メモ

20161024

追加の方が長いけど。

まず結論。

結局、調査してもしなくても、同じ結論。

普通に殺せばいい。
つか、丁寧に除去は出来ない。

$ cd /etc/profile.d
$ sudo mv perl-homedir.sh perl-homedir.sh.bak

もしくは、OSのインストール時に、Perlの設定を後回しにして、自分でセットアップする。

出所

perl-homedir.sh が含まれているのは、↓

perl-local-lib-1.008010-3.el7.src.rpm

これは、local::lib とラッパ、パッチのパッケージ

$ rpm2cpio ../perl-local-lib-1.008010-3.el7.src.rpm| cpio -idv
local-lib-1.008009-Append-semicolon-to-setenv.patch
local-lib-1.008010-Fix-setting-undefined-variable-in-CSH.patch
local-lib-1.008010.tar.gz
perl-homedir.csh
perl-homedir.sh
perl-local-lib.spec
135 blocks

インストールした日付

$ rpm -qa --last | grep perl-home

私の場合、CentOS7 をインストールしたその日の日付。

要するに、インストールのときに全乗せでインストールした、自業自得の結果。

依存関係

$ rpm  -qpR  perl-local-lib-1.008010-3.el7.src.rpm 
perl(Carp)
perl(Cwd)
perl(CPAN) >= 1.82
perl(ExtUtils::Install) >= 1.43
perl(ExtUtils::MakeMaker) >= 6.42
perl(File::Path)
perl(File::Spec)
perl(inc::Module::Install)
perl(Module::Build) >= 0.36
perl(Capture::Tiny)
perl(File::Temp)
perl(Test::More)
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1

アンインストール

出来ないのは百も承知の上で、コマンドを叩いてみる。

$ sudo rpm -e perl-local-lib-1.008010-3.el7       
エラー: 依存性の欠如:
	perl(local::lib) は (インストール済み)perl-CPAN-0:1.9800-286.el7.noarch に必要とされています
	perl-local-lib = 1.008010-3.el7 は (インストール済み)perl-homedir-1.008010-3.el7.noarch に必要とされています
4
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?