Getting around goofy package dependencies
Ihor Antonov
ihor at antonovs.family
Thu Jan 2 02:46:06 UTC 2020
On Wednesday, January 1, 2020 5:51:09 PM PST Ronald F. Guilmette wrote:
Hi, I am not familiar with Perl at all, but here is some generic advice
> I am having a feeling of deja vu because I'm sure I have been here
> before.
>
> I need to use a package named p5-Net-IDN-Encode on one of my FreeBSD 12.0
> systems. I tried to just install it with pkg add but that didn't work
> becaise I had an older version of perl5 installed and p5-Net-IDN-Encode
> wanted a newer one.
>
> So I installed the latest per5, i.e. "perl5-5.30.0". I figured that
> should make me golden.
>
> Apparently I'm not that lucky, and p5-Net-IDN-Encode appars to want one
> very specific version of perl5, i.e. perl5-5.28.2, even though I have
> an even newer one. as a result, now when I try to install the
> p5-Net-IDN-Encode [ackage, using "pkg install" I get the following
> helpful notice:
>
> =======================================================================
> Updating FreeBSD repository catalogue...
> FreeBSD repository is up to date.
> All repositories are up to date.
> The following 2 package(s) will be affected (of 0 checked):
>
> New packages to be INSTALLED:
> p5-Net-IDN-Encode: 2.500
> perl5.28: 5.28.2
>
> Number of packages to be installed: 2
> ...
> =======================================================================
>
> I have tried to get around this by invoking "pkg install" with the -f
> option, and separately also with the -M option, but neither one made
> even the slightest bit of diofference.
>
> So, two questions:
>
> 1) Why do neither the -f nor -M options for "pkg install" do what the
> corresponding man page seems to say they will do?
'-f' option is "Force the reinstallation of the package if already installed."
So this has nothing to do with skipping undesired packages behaviour that you
probably need.
'-M' also causes perl5 to be installed for me, so maybe pkg bug? (Did not
check bugs)
> 2) Why is the package for p5-Net-IDN-Encode configured in a way that
> causes it to need *only* and *exactly* perl5-5.28.2, and why doesn't
> the configuration of the and p5-Net-IDN-Encode packahe allow me to
> install it when have an even newer version fo perl5 installed?
>
It is a good question, without knowing specifics it is hard to answer.
I look at package configuration [1] and see that package wants perl5 - no
specific version there. So my guess is that the dependency is somewhere in the
code of the the p5-Net-IDN-Encode package
I'd try 2 things:
- Try contacting package maintainer and see if you can get some help.
- Try building the port yourself [2] instead of using binary package
[1] https://svnweb.freebsd.org/ports/head/textproc/p5-Net-IDN-Encode/Makefile?
view=markup
[2] https://metacpan.org/release/Net-IDN-Encode
More information about the freebsd-questions
mailing list