06-20-2009
A couple of things to consider.
First, the ~/.profile is not the only file sourced during an interactive login. Depending on the shell there are also files located in /etc/ that are sourced. So, you may still not have the entire environment.
Second, you really don't need the entire profile, but finding exactly what you do need may be a problem. Remember cron is not using a 'login' environment, so somethings may even be skipped when spawning a shell. I would start with setting a secure PATH or even hard-coding the full paths in your shell wrapper. You can add a call to 'env' at the top of your wrapper and redirect the output to a file. Then when you run it manually and via cron, you can see the differences in the environment. You obviously found that the perl binary was not in your path.
Since the module you mention is C based, there is a good chance that a necessary library or binary dependency is not available in your environment when running via cron. You may need to add LD_LIBRARY_PATH or LD_RUN_PATH. You can execute perl with the '-V' option to see how the binary was compiled. This may give you a clue on what libraries and paths are needed. Another thing to look at is using 'ldd' against any binaries to see their library dependencies.
I hope this helps.
- B
10 More Discussions You Might Find Interesting
1. Programming
Hi there:
Thanks for clicking in first. I have a question here. I have a module that needs to be dynamically loaded when another piece of code needs it at runtime. I know that I will have to make a soname file before I can use it dynamically. My question is what commad I should use to make... (2 Replies)
Discussion started by: yanhu
2 Replies
2. UNIX and Linux Applications
Hi,
I am trying to install perl module DBD::mysql and don't know how to resolve the following:
# make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00base.............ok 3/5install_driver(mysql) failed: Can't load... (3 Replies)
Discussion started by: Yogesh Sawant
3 Replies
3. Linux
Hi masters,
I am new to linux and unix forum and this is my first forum. So please excuse if
I am not giving sufficient information. I will give them on request.
I have created a bandwidth manager module. I am using a 2.6.9 kernel and in Red Hat 3.4.3 distribution. But when i run make... (1 Reply)
Discussion started by: iamjayanth
1 Replies
4. Shell Programming and Scripting
Hi
I am working on XMLDiff utility which is working only thing which is bug in this utility is that i used Excel file as the output file so that user can perform some operations on it ... now what i am doing is i am using Spreadsheet::Writeexcel module and its giving me problems ...
flow... (0 Replies)
Discussion started by: zedex
0 Replies
5. Solaris
Is there any link/tutorial on loading Solaris kernel modules at boot time?? (0 Replies)
Discussion started by: unisolin
0 Replies
6. Shell Programming and Scripting
All,
Is it possible to call a subroutine from the perl expect module after logging to a system that is within the same program. My situation is I need to run a logic inside a machine that I'm logging in using the expect module, the logic is also available in the same expect program.
Thanks,... (5 Replies)
Discussion started by: arun_maffy
5 Replies
7. Windows & DOS: Issues & Discussions
Hi,
I am struggling in installing TK module for strawberry perl.
I downloaded TK804 module,
extracted to a folder, kept in c:/strawberry/perl/lib path,
then from tht path
1) perl makefile.pl
2)dmake
3)dmake test
4)dmake install
During perl makefile.pl it is giving error as... (3 Replies)
Discussion started by: vasanth.vadalur
3 Replies
8. UNIX for Advanced & Expert Users
I'd like to install cpufreq modules on my server .
I tried
sudo modprobe acpi-cpufreq
but got the error
FATAL: Error inserting acpi_cpufreq (/lib/modules/2.6.18-238.12.1.el5xen/kernel/arch/x86_64/kernel/cpufreq/acpi-cpufreq.ko): No such device
cat /proc/cpuinfo gives this
... (11 Replies)
Discussion started by: vishwamitra
11 Replies
9. Fedora
Well, I followed the steps in the Debian wiki here to install the drivers for the following video card:
$ lspci | grep VGA
03:00.0 VGA compatible controller: NVIDIA Corporation GF104 (rev a1)I confirmed the correct driver is installed. As you probably see I've tried this a few times and a few... (1 Reply)
Discussion started by: Azrael
1 Replies
10. Shell Programming and Scripting
PERL MODULE :
To debug my perl module code in test environment. I have taken production module to the test in the my home path directory and was trying to test it by changing the below path in my test code.
But still i am getting the error to debug it. can you please let me knw whether i am... (13 Replies)
Discussion started by: ramkumar15
13 Replies
LEARN ABOUT NETBSD
npm-run-script
NPM-RUN-SCRIPT(1) NPM-RUN-SCRIPT(1)
NAME
npm-run-script - Run arbitrary package scripts
SYNOPSIS
npm run-script <command> [--silent] [-- <args>...]
alias: npm run
DESCRIPTION
This runs an arbitrary command from a package's "scripts" object. If no "command" is provided, it will list the available scripts.
run[-script] is used by the test, start, restart, and stop commands, but can be called directly, as well. When the scripts in the package
are printed out, they're separated into lifecycle (test, start, restart) and directly-run scripts.
As of ` https://blog.npmjs.org/post/98131109725/npm-2-0-0, you can use custom arguments when executing scripts. The special option -- is
used by getopt https://goo.gl/KxMmtG to delimit the end of the options. npm will pass all the arguments after the -- directly to your
script:
npm run test -- --grep="pattern"
The arguments will only be passed to the script specified after npm run and not to any pre or post script.
The env script is a special built-in command that can be used to list environment variables that will be available to the script at run-
time. If an "env" command is defined in your package, it will take precedence over the built-in.
In addition to the shell's pre-existing PATH, npm run adds node_modules/.bin to the PATH provided to scripts. Any binaries provided by
locally-installed dependencies can be used without the node_modules/.bin prefix. For example, if there is a devDependency on tap in your
package, you should write:
"scripts": {"test": "tap test/*.js"}
instead of
"scripts": {"test": "node_modules/.bin/tap test/*.js"}
to run your tests.
The actual shell your script is run within is platform dependent. By default, on Unix-like systems it is the /bin/sh command, on Windows it
is the cmd.exe. The actual shell referred to by /bin/sh also depends on the system. As of `
https://github.com/npm/npm/releases/tag/v5.1.0 you can customize the shell with the script-shell configuration.
Scripts are run from the root of the module, regardless of what your current working directory is when you call npm run. If you want your
script to use different behavior based on what subdirectory you're in, you can use the INIT_CWD environment variable, which holds the full
path you were in when you ran npm run.
npm run sets the NODE environment variable to the node executable with which npm is executed. Also, if the --scripts-prepend-node-path is
passed, the directory within which node resides is added to the PATH. If --scripts-prepend-node-path=auto is passed (which has been the
default in npm v3), this is only performed when that node executable is not found in the PATH.
If you try to run a script without having a node_modules directory and it fails, you will be given a warning to run npm install, just in
case you've forgotten.
You can use the --silent flag to prevent showing npm ERR! output on error.
You can use the --if-present flag to avoid exiting with a non-zero exit code when the script is undefined. This lets you run potentially
undefined scripts without breaking the execution chain.
SEE ALSO
o npm help 7 scripts
o npm help test
o npm help start
o npm help restart
o npm help stop
o npm help 7 config
January 2019 NPM-RUN-SCRIPT(1)