Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re: How can I find installed packages in a broken Perlbrew?

by kcott (Archbishop)
on Dec 07, 2022 at 16:40 UTC ( [id://11148655]=note: print w/replies, xml ) Need Help??


in reply to How can I find installed packages in a broken Perlbrew?

G'day monsignor,

I've been using Perlbrew for a very long time, certainly well in excess of a decade. Currently on Cygwin for 3-4 years; before that on Mac OS X (later macOS) for 8-9 years; and other systems before that whose details I don't immediately recall. I performed many upgrades on those systems and never had to mess with Perlbrew for any of them.

I do not have ~/.perl5. Is that, by any chance, a typo in your post (and should be ~/perl5)? Here's some of what I have:

$ env | grep BREW | sort PERLBREW_HOME=/home/ken/.perlbrew PERLBREW_MANPATH=/home/ken/perl5/perlbrew/perls/perl-5.36.0/man PERLBREW_PATH=/home/ken/perl5/perlbrew/bin:/home/ken/perl5/perlbrew/pe +rls/perl-5.36.0/bin PERLBREW_PERL=perl-5.36.0 PERLBREW_ROOT=/home/ken/perl5/perlbrew PERLBREW_SHELLRC_VERSION=0.86 PERLBREW_VERSION=0.86

I checked in https://perlbrew.pl/ and noticed the latest version is 0.96. As you can see above, I have version 0.86. I then checked in https://perlbrew.pl/Installation.html in case I'd missed some change: that's still showing ~/perl5; no mention of ~/.perl5.

If you could tell us a bit more about what system you're using, what the upgrade involved, and why you 'had to "deactivate" perlbrew', we might be able to provide better help.

A package manager (apt, rpm, zypper, etc.) would normally install system Perl modules. With Perlbrew, you'd use something else (cpan, cpanm, manual 'make' install, etc.). It would be useful if you described the interaction between your package manager and Perlbrew.

— Ken

Replies are listed 'Best First'.
Re^2: How can I find installed packages in a broken Perlbrew?
by monsignor (Acolyte) on Dec 10, 2022 at 06:48 UTC

    Thanks for the reply. I ran the "automatic upgrade" from Linux Mint 20.3 to Linux Mint 21. In order to do this I had to remove a bunch of PPAs and a few other packages that were not compatible with LM21. Thanks for pointing it out, you are right I should have said ~/perl5. When I tried to run perlbrew or a perl script I was getting these errors:

    $ perlbrew ListUtil.c: loadable library and perl binaries are mismatched (got han +dshake key 0xcd00080, needed 0xeb00080) $ perl imap-test.pl ListUtil.c: loadable library and perl binaries are mismatched (got han +dshake key 0xcd00080, needed 0xeb00080) [download]

    I changed ~/perl5 to ~/perl5-deactivated

    and that allowed me to run perl. I ran:
    ~/perl5--deactivated/perlbrew$ bin/perlbrew version bin/perlbrew - App::perlbrew/0.94

    What is the best way forward? I noted that the latest version is 0.96. If I change the directory back to perl5 and run the install script will it upgrade everything?

      "I changed ~/perl5 to ~/perl5-deactivated ... and that allowed me to run perl. ... If I change the directory back to perl5 ..."

      Look in your PERLBREW_* environment variables. Perhaps you need to change instances of perl5-deactivated to perl5.

      Also look in your ~/.bashrc (or equivalent). Maybe similar changes are needed there.

      "~/perl5--deactivated/perlbrew$ bin/perlbrew version"

      Is it ~/perl5-deactivated, or ~/perl5--deactivated, or something else?

      — Ken

        Hi Ken

        I initially installed perlbrew and it created ~/perl, I did my upgrade and it ran into problems. The way I got things to the point that perl would run was to deactivate perlbrew by changing the name of the ~/perl directory. I didn't change anything else. When I start a shell I get errors because of the statements in the bashrc referencing a directory that doesn't exist.

        I don't know what is causing the library error I was getting. I don't know if just doing a reinstall of perlbrew over top of the old one (i.e. by changing the directory name back to ./perl will fix the problem and keep/upgrade any packages that I had previously installed. That's what I'm looking for guidance on.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11148655]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others avoiding work at the Monastery: (5)
As of 2024-04-19 01:59 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found