cpanminus | cpanminus - get , unpack , build and install modules | Build Tool library
kandi X-RAY | cpanminus Summary
kandi X-RAY | cpanminus Summary
App::cpanminus - get, unpack, build and install modules from CPAN.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of cpanminus
cpanminus Key Features
cpanminus Examples and Code Snippets
Community Discussions
Trending Discussions on cpanminus
QUESTION
I'm working on a CPAN distribution that can work on Win32 and *nix. However, in order for it to work on Win32, it requires another CPAN distribution (module) that can only be installed on Win32.
The problem with this is that, by declaring that module as a dependency, it fails to install on *nix machines. But it will not be really used/required on *nix machines, only when running on Win32.
My distribution uses ExtUtils::MakeMaker
and configures dependencies in the auto-generated hash %WriteMakefileArgs
.
I've tried editing Makefile.PL
to add or remove dependencies based on the OS running it. However, this doesn't really work for the generation of META.json
and META.yml
, which are generated based on the OS where I eventually execute make dist
. If I run it on Windows, then the Win32-only dependencies are added to those files and break the *nix install. If I run it on *nix, then the dependencies are not added and it may break the install on Win32 when the time to test the distribution comes.
Is there a way to define different dependencies for a specific OS, in a way that applications like CPAN
or CPANminus
can successfully work on each OS when installing the distribution?
ANSWER
Answered 2021-Apr-25 at 13:27Don't worry; you are probably already doing everything right.
Yes, the META.json
will only reflect the dependencies which Makefile.PL detects on your own machine, so say you're building the distribution on Linux and uploading it to CPAN, the META.json
on CPAN won't reflect the Windows dependencies.
But that's okay, because when people install the distribution, their CPAN client won't use that META.json
file to install dependencies. It will re-run Makefile.PL on the end user's system, which will generate a file called MYMETA.json
, which will include the Windows depenencies if they're running it on Windows, and use the dependencies from MYMETA.json
instead of META.json
.
What follows are details for pedantic people, which you probably don't need to worry about:
META.json
includes a section calledconfigure_requires
which lists not the distribution's requirements but the requirements of Makefile.PL itself; sometimes Makefile.PL will do some complex stuff and have its own dependencies. Because these need to be installed before Makefile.PL is run, CPAN clients get the list fromMETA.json
instead ofMYMETA.json
;MYMETA.json
doesn't exist yet.- It is possible to set a property
"dynamic_config": 0
in META.json which tells the CPAN client that Makefile.PL isn't doing anything "clever", so it can skip running Makefile.PL, use META.json as a definitive list of dependencies, and guess where to install any included modules and scripts. Not all CPAN clients support this, so many will run Makefile.PL anyway; so you still need to include Makefile.PL. It can just make installation a slight bit faster for those clients which support it.
QUESTION
I cannot build and install Oracle Instant Client 19.8 on macOS Big Sur 11.2.1. I get the following error:
...ANSWER
Answered 2021-Feb-21 at 18:12The problem is that the DYLD_LIBRARY_PATH
environment variable is not propagated to perl when running make test
as described here. Instead of running cpanm DBD::Oracle
, you can download the module run the tests manually using e.g. prove
. The following worked for me (macOS BigSur 11.2.1), perlbrew perl version 5.32.0:
Download and install
instantclient-basic-macos.x64-19.8.0.0.0dbru.dmg
andinstantclient-sdk-macos.x64-19.8.0.0.0dbru.dmg
from https://www.oracle.com/database/technologies/instant-client/macos-intel-x86-downloads.htmlInstall
DBD::Oracle
(without runningmake test
)
QUESTION
I am trying to install the module Net::Pcap. Here is what I have done:
...ANSWER
Answered 2021-Feb-09 at 21:46The problem is with my version of libpcap. This package appears to be broken on libpcap 1.10 and 1.9.1. After installing libpcap 1.8 the package built fine.
QUESTION
I have a development laptop (Mint 19.3
), and a test server (Ubuntu 18.04.4 LTS
).
The laptop is Docker version 19.03.5, build 633a0ea838
, the server is Docker version 19.03.12, build 48a66213fe
I'm running Python 3.6 code inside the container, which uses subprocess
(code below) to create an sshfs mount to a third server, after which the python code walks through the mounted directory.
Everything works fine on my development laptop. But on the server, the directory mounts (and is seen with the mount
command) however cd'ing into the directory just hangs, and the Python code's subsequent walk
just hangs. (NOTE: The python code never crashes or errors out. It just hangs forever.)
HOWEVER, if I manually use the same sshfs command at the container's command line, the directory works fine.
I'm at a loss as to how to troubleshoot this.
===2020-09-25 UPDATE===
OK. Since the Python code uses subprocess, the sshfs mount is obviously available to any terminal windows that wants to use it.
I have tried accessing the mount from a new terminal window inside the container, but when I cd to the mount - the window just freezes.
Well, I left everything sitting overnight - and now when I try to cd into the mount ... it works. It's like the mount has to sit for hours before it will work.
Any ideas?
Python code
...ANSWER
Answered 2020-Dec-13 at 10:51I am assuming you want to mount some server's directory to container's filesystem using SSHFS. You could add that instruction to the Dockerfile:
QUESTION
I'm running macOS Catalina 10.15.7 and I need to install Oracle Instant Client to run run a Perl script that connects to a DB.
1. Installing Oracle Instant ClientI downloaded the packages I needed:
- Basic Light Package (DMG)
- SDK Package (DMG)
- ODBC Package (DMG)
From Instant Client 19.8 and followed the installation instructions without any issues (just copying and pasting)
2. SettingThe files are extracted in
/Users/username/Downloads/instantclient_19_8
ORACLE_HOME
Next, I did set ORACLE_HOME to /Users/username/Downloads/instantclient_19_8
ANSWER
Answered 2020-Dec-16 at 22:12macOS is always changing, but on Mojave I installed Instant Client from the DMGs and then did:
QUESTION
I'm having troubles installing the Net::Amazon::S3
package for perl on my Win 10 machine running 32 bit Strawberry Perl.
I try to install the package with cpanm
:
ANSWER
Answered 2020-Aug-03 at 03:33This a bug in a module used to perform the test. The bug results in the test failing on Windows, but isn't indicative of a problem with any of the modules being installed. It's a problem with the test, not the modules being tested.
Adding the following to t\00use.t
will allow the test to run:
QUESTION
I'm trying to build a Docker container for this module. Main idea is that I'm trying to use, as much as possible, the packages provided by Ubuntu to avoid problem; I'm also using the default perl that comes with the container, which apparently is 5.22.
This is the Dockerfile:
...ANSWER
Answered 2019-Nov-04 at 16:23I think the problem is that you do WORKDIR /test
too late. In the beginning of Dockerfile
you do ADD . .
this will copy all files from the current directory of your local filesystem to the root directory of the image. The problem is that there can be conflicts between the directories already present in the root of the image, like /lib
. Try instead something like this:
QUESTION
I am trying to install the Perl package Vcf
, which has a LOT of dependencies. One of these dependencies DB_File
will not install.
ANSWER
Answered 2019-Aug-28 at 18:14You need the libdb development library installed on your machine before you can build DB_File — this probably comes from a package called libdb-dev
or libdb-devel
in your system package manager.
QUESTION
On my mac OS X machine Darwin maci 15.6.0 Darwin Kernel Version 15.6.0
I have installed libxml2 and libxslt in following custom directory
/usr/local/MyLibs/libxml2-2.9.2
and libxslt
/usr/local/MyLibs/libxslt-1.1.29
Now I want to use these libs to build my CPANM module XML::LibXSLT.
This tells me that I can do so using --configure-args
(its still experimental). So I do something like,
ANSWER
Answered 2017-Mar-30 at 13:13From the distro's README,
The Makefile.PL tries to determine the correct compiler and linker flags for its library dependencies using pkg-config and xslt-config. If this fails, you may override the values like this
QUESTION
I am trying to install a Perl Module Bio::Tools::Run::Alignment::Muscle. I am using this docker image:
...ANSWER
Answered 2019-Mar-11 at 20:00You need to install Java for a successful t/Eponine.t
test.
There is an error in line:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install cpanminus
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page