Uninstalling Perl Error: Cannot remove due to the following packages that depend on it - perl

I'm trying to upgrade my version of Perl from 5.14 up to 5.20.
When I run the perl 5.20 upgrade sudo pkg update system/runtime/perl#5.20 I get this error:
pkg update: No matching version of system/runtime/perl can be installed:
Reject: pkg://ms.system.com/system/runtime/perl#5.20.0,5.11-0.151006:20140604T182727Z
Reason: This version is excluded by installed incorporation pkg://perl.system.com/omniti/incorporation/perl-514-incorporation#5.14,5.11-0.151002:20120725T211507Z
Thus I'm trying to uninstall the current 5.14 version first with sudo pkg uninstall system/incorporation/perl-514-incorporation and got:
Creating Planpkg uninstall: Cannot remove 'pkg://perl.omniti.com/omniti/incorporation/perl-514-incorporation#5.14,5.11-0.151002:20120725T211507Z' due to the following packages that depend on it:
// A list of dependent packages
Any idae on how to get pass this?

I strongly recommend that you don't attempt to upgrade your system perl. A lot of miscellaneous stuff in your OS depends on it and upgrading it to a new major version will entail breaking a lot of stuff. Consider also that this upgrade will require rebuilding every CPAN module with XS dependencies as well.
The better solution is to use perlbrew to install perl-5.20.0 locally in your home directory. You can then use that to work with newer perls without touching your OS perl.

Related

Nvm perl error after El Capitan upgrade

I upgraded to El Capitan on two laptops. For some reason on one I am having trouble installing any node versions with nvm (installed through homebrew). If I nvm install v0.12.7 this is what I get:
######################################################################## 100.0%
perl version 5.18.2 can't run /USR/BIN/shasum. Try the alternative(s):
/USR/BIN/shasum5.16 (uses perl 5.16)
/USR/BIN/shasum5.18 (uses perl 5.18)
Run "man perl" for more information about multiple version support in
Mac OS X.
Checksums do not match.
Binary download failed, trying source.
Downloading https://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gz...
######################################################################## 100.0%
perl version 5.18.2 can't run /USR/BIN/shasum. Try the alternative(s):
/USR/BIN/shasum5.16 (uses perl 5.16)
/USR/BIN/shasum5.18 (uses perl 5.18)
Run "man perl" for more information about multiple version support in
Mac OS X.
Checksums do not match.
I don't know what happened, but I've looked into the error message and various mentions of how to fix the Perl issue but have came up with nothing.
I had the same problem - for some reason, on my Mac I had at least 2 versions of Perl, if not 3 - 5.16, 5.18 and I think also 5.18.2.
This broke many of the Perl libraries and command line tools, some of them used by homebrew, such as shasum.
I believe this could have happened during an XCode upgrade, because this could have changed the Perl installation.
I fixed it by re-installing a new version of Perl manually. I chose the latest one and followed these instructions:
I had the same problem, no idea how it happened. I suspect it somehow happened during an XCode Update. I fixed this by re-installing Perl on my Mac manually. I used the latest version as described here:
curl -O http://www.cpan.org/src/perl-5.26.1.tar.gz
tar -xzf perl-5.26.1.tar.gz
cd perl-5.26.1
./Configure -des -Dprefix=/usr/local/
make
make test
sudo make install
See also http://search.cpan.org/~shay/perl/README.macosx

Arch Linux Perl. (Data Dumper) undefined symbol Perl_xs_apiversion_bootcheck

Since a recent update Perl fails to execute most of the scripts on my Arch Linux System.
Most of the time it failes due to a undefined Symbol in the Data::Dumper module. Other times it is because of the Parser.so with the same undefined symbol Perl_xs_apiversion_bootcheck
Perl v5.22.0
Data::Dumper is up to date (2.154).
Full Error:
/usr/bin/perl: symbol lookup error: perl5/lib/perl5/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so: undefined symbol: Perl_xs_apiversion_bootcheck
I already tried to reinstall the Modules, did not help.
I found this thread:
Error running Perl script on 2 different computers
They talk about the problems of differen perl versions, which I do not seem to have here.
Any other ideas? (Reinstall the perl as whole looks impossible for from here...)
Thanks
Arch Linux recently upgraded from Perl 5.20 to Perl 5.22. Those are not ABI compatible, so any XS modules installed for Perl 5.20 need to be rebuilt, or you'll get errors like the one you're describing.
Arch's perl-5.22.0-1 package includes Data::Dumper 2.158. Since you say you have 2.154, you must have manually installed an upgrade to Data::Dumper for Perl 5.20. You need to remove that (now obsolete) version.
Does pacman -Qi perl-data-dumper report anything? If it does, you might try pacman -R perl-data-dumper.
Update: It seems you've been installing modules into your system Perl directories using cpan. That winds up mixing files installed by pacman and files installed by cpan, which is why it's not recommended.
You should consider installing CPANPLUS::Dist::Arch and using cpanp instead. You can do this with:
sudo pacman -S perl-cpanplus-dist-arch
setupdistarch
After that, installing modules with cpanp will build a package file and install it with pacman. You can then use pacman to uninstall them.

Need help for installing LDAP in unix

I am following the below procedure for installing LDAP in unix
1.tar -xzf perl-ldap-0.43.tar.gz
2.cd perl-ldap-0.43
3.perl MakeFile.PL
I am getting below message
* Checking for Perl dependencies...
We have to reconfigure CPAN.pm due to following uninitialized parameters:
cpan_home, keep_source_where, build_dir, build_cache, scan_cache, index_expire, gzip, tar, unzip, make, pager, makepl_arg, make_arg, make_install_arg, urllist, inhibit_startup_message, ftp_proxy, http_proxy, no_proxy, prerequisites_policy, cache_metadata
CPAN is the world-wide archive of perl resources. It consists of about
100 sites that all replicate the same contents all around the globe.
Many countries have at least one CPAN site already. The resources
found on CPAN are easily accessible with the CPAN.pm module. If you
want to use CPAN.pm, you have to configure it properly.
If you do not want to enter a dialog now, you can answer 'no' to this
question and I'll try to autoconfigure. (Note: you can revisit this
dialog anytime later by typing 'o conf init' at the cpan prompt.)
Are you ready for manual configuration? [yes]
How to install without CPAN and what are the dependent modules required to install Ldap?
Can anyone suggest me the standard process of installation.
Thanks In Advance
I assume that by perl-ldap-0.43.tar.gz you are trying to install Net::LDAP
How to install without CPAN?
CPAN is the recommended way of installing Perl modules. You have to configure it just once, after that if you need to install any Perl module you can just type the below.
$ cpan ModuleName like in your case instead of downloading, untaring and running makefile you can just do:
$ cpan Net::LDAP
What are the dependent modules required to install Ldap?
One more advantage of using CPAN is you don't have to care about dependencies. CPAN will install dependencies automatically if you ask it to do so. Do it by
$ perl -MCPAN -e shell
cpan[1]> o conf prerequisites_policy follow
cpan[2]> o conf commit
exit
Or just use App::cpanminus and run
$ cpanm Net::LDAP it will install the module with all its dependencies.
Also check out Perl LDAP page.
Edit: Based on your answer
You will get some errors like above, you will have to see the error log, check the Module which is missing, then go to CPAN and download that module's tar.gz and then do the same steps as you were doing, like untaring, and running Makefile. You will have to do this unless all of your dependencies are installed.
Can we ignore warnings while installing perl modules?
I have installed ExtUtils-MakeMaker-6.98.tar.gz by ignoring below warnings
Using included version of ExtUtils::Install (1.54) as it is newer than the installed version (1.33).
Using included version of CPAN::Meta::YAML (0.008) because it is not already installed.
Using included version of JSON::PP::Compat5006 (1.09) because it is not already installed.
Using included version of ExtUtils::Manifest (1.60) as it is newer than the installed version (1.46).
Using included version of version (0.88) because it is not already installed.
Using included version of ExtUtils::Command (1.16) as it is newer than the installed version (1.09).
Using included version of CPAN::Meta (2.120351) because it is not already installed.
Using included version of JSON::PP (2.27203) because it is not already installed.
Using included version of File::Temp (0.22) as it is newer than the installed version (0.16).
Using included version of Parse::CPAN::Meta (1.4405) because it is not already installed.
Using included version of File::Copy::Recursive (0.38) because it is not already installed.
Checking if your kit is complete...
Warning: the following files are missing in your kit:
't/liblist/win32/di
't/liblist/win32/space
Please inform the author.
Generating a Unix-style Makefile
Writing Makefile for ExtUtils::MakeMaker
Writing MYMETA.yml and MYMETA.json**
But I'm able to install successfully. Will it create any problems in future?

4store install: perl(Net::HTTP) is needed by 4store-v1.1.2-1.x86_64

I just followed the instruction at http://4store.org/trac/wiki/Download:
rpm -Uvh http://4store.org/download/linux/centos5/4store-v1.1.2-1.x86_64.rpm http://4store.org/download/linux/centos5/rasqal-0.9.24-1.x86_64.rpm http://4store.org/download/linux/centos5/raptor2-2.0.0-0.x86_64.rpm http://4store.org/download/linux/centos5/mpfr-2.4.1-1.x86_64.rpm http://4store.org/download/linux/centos5/gmp-4.3.1-5.x86_64.rpm
I got errors when installing 4store on CentOS 5.6:
perl(Net::HTTP) is needed by 4store-v1.1.2-1.x86_64
perl(URI::Escape) is needed by 4store-v1.1.2-1.x86_64
But I have already installed those modules:
cpan Net::HTTP
cpan URI::Escape
And I tested it with:
perl -MNet::HTTP -e ';'
But I still got those errors. Any ideas?
CPAN clients do not register modules in the RPM database, so that does not help to satisfy dependencies.
perl-Net-HTTP and perl-URI-Escape are not officially packaged for CentOS 5.6: http://vault.centos.org/5.6/os/x86_64/CentOS/
Find a 3rd party repo that offers them.
Try to force the installation with --nodeps.
You could also bribe Dave Cross to backport his maintained packages from CentOS 6: http://rpm.mag-sol.com/Centos/6/x86_64/
Learn packaging and build them yourself.

GtkMozEmbed module in PyGtk

I'm working on a soloution that needs the gtkMozembed module for python.
I had installed the pygtk2 and genome-python-* packages.
But still i don't have the gtkmozembed module. Can any one tell me how can i install this module.?
I'm also searching for some good repositories for CentOS so that I can update the latest packages. All the repositories now I have, do not maintain the updated packages.
I use CentOs 6.0.
Before continuing, note that gtkmozembed is deprecated, abandoned by the authors and therefore not packaged in CentOS 6 or Ubuntu Oneiric and later:
https://lists.ubuntu.com/archives/ubuntu-devel/2011-May/033229.html
https://groups.google.com/forum/#!topic/mozilla.dev.embedding/c_NMcO-N8wo/discussion
Therefore any use of gtkmozembed is temporary. You may wish to consider the following alternatives which are available as RPM packages on CentOS 6:
pywebkitgtk : Python Bindings for WebKitGTK+
gnome-python2-gtkhtml2 : Python bindings for interacting with gtkhtml2
I managed to download gnome-python2-extras from CentOS 5 and build it on CentOS 6 with the following commands:
rpm -ivh http://vault.centos.org/5.7/os/SRPMS/gnome-python2-extras-2.14.2-7.el5.src.rpm
# edit ~/rpmbuild/SPECS/gnome-python-extras.spec
# comment out the line starting with %patch1
rpmbuild -ba ~/rpmbuild/SPECS/gnome-python-extras.spec