ひさびさにcpan2rpmでPerlのCPANモジュールをRPM化しようとしたらエラー

Try 'cpan2rpm --mk-rpm-dirs=~/rpm' to setup your...

ひさびさにcpan2rpmでPerlのCPANモジュールをRPM化しようとしたら、下記のようなエラーでコンパイルが進まなくなってしまいました。


$ cpan2rpm ****::****

-- cpan2rpm - Ver: 2.028 --
Upgrade check
Fetch: HTTP

-- module: Template::Toolkit --
Found: ***.tar.gz
...省略...
RPM user environment - Your account does not have
permissions to the requisite RPM directory structure.
Try 'cpan2rpm --mk-rpm-dirs=~/rpm' to setup your
environment for non-root package building.
Failing dirs: ./rpmbuild/SRPMS ./rpmbuild/BUILD ./rpmbuild/SOURCES ./rpmbuild/SPECS ./rpmbuild/RPMS
cannot remove path when cwd is /tmp/qaiZoP3Zij/Template-Toolkit-2.26 for /tmp/qaiZoP3Zij:  at /usr/share/perl5/File/Temp.pm line 902
-- Done --

原因は、最初にrpmbuildディレクトリを作成していなかったので、上記のエラーにもあるように下記のコマンドでrpmbuildディレクトリを作成したのですが…


cpan2rpm --mk-rpm-dirs=./rpmbuild

その際に、下記のような「.rpmmacros」がホームディレクトリに生成されてしまったことが原因でした。このファイルを削除してコンパイルしたら成功しました。


$ cat .rpmmacros
%_topdir ./rpmbuild

ネット上にも同様な事象でお悩みの方がいらっしゃいましたが解決に至っておらず、もし、この記事が参考になりましたら幸いです。