Perl Module


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Perl Module
# 8  
Old 02-27-2009
A few more things, I need to install Math-BigInt-GMP, its not located on ppm. I went to CPAN and downloaded Math-BigInt-GMP-1.24, went to dos and ran "perl Makefile.pl".
I'm getting errors
Code:
Set up gcc environment - 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
Note (probably harmless): No library found for -lgmp
Note (probably harmless): No library found for -lkernel32
Note (probably harmless): No library found for -luser32
Note (probably harmless): No library found for -lgdi32
Note (probably harmless): No library found for -lwinspool
Note (probably harmless): No library found for -lcomdlg32
Note (probably harmless): No library found for -ladvapi32
Note (probably harmless): No library found for -lshell32
Note (probably harmless): No library found for -lole32
Note (probably harmless): No library found for -loleaut32
Note (probably harmless): No library found for -lnetapi32
Note (probably harmless): No library found for -luuid
Note (probably harmless): No library found for -lws2_32
Note (probably harmless): No library found for -lmpr
Note (probably harmless): No library found for -lwinmm
Note (probably harmless): No library found for -lversion
Note (probably harmless): No library found for -lodbc32
Note (probably harmless): No library found for -lodbccp32
Note (probably harmless): No library found for -lmsvcrt
YAML not installed, make dist will not override metafile at Makefile.pl line 20.

Writing Makefile for Math::BigInt::GMP

Then when i run the the command "nmake", i get the following:

Code:
Microsoft (R) Program Maintenance Utility   Version 1.50
Copyright (c) Microsoft Corp 1988-94. All rights reserved.

cp lib/Math/BigInt/GMP.pm blib\lib\Math\BigInt\GMP.pm
        C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils\xsubpp  -typemap C:\Perl\lib\E
xtUtils\typemap -typemap typemap  GMP.xs > GMP.xsc && C:\Perl\bin\perl.exe -MExt
Utils::Command -e mv GMP.xsc GMP.c
        gcc -c    -DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DUS
E_SITECUSTOMIZE -DPRIVLIB_LAST_IN_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SY
S -DUSE_PERLIO -DPERL_MSVCRT_READFIX -DHASATTRIBUTE -fno-strict-aliasing -mms-bi
tfields -O2    -DVERSION=\"1.24\"  -DXS_VERSION=\"1.24\"  "-IC:\Perl\lib\CORE"
 GMP.c
gcc: no input files
NMAKE : fatal error U1077: 'C:\WINDOWS\system32\cmd.exe' : return code '0x1'
Stop.

Whats going on here?

Also,
In CPAN
i ran the following
Code:
perl -MCPAN -e "install Crypt::Random"

And i recieved the following error:
Code:
Set up gcc environment - 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
Going to read C:\Perl\cpan\Metadata
Warning: Found only 0 objects in C:\Perl\cpan\Metadata
Fetching with LWP:
  http://ppm.activestate.com/CPAN/authors/01mailrc.txt.gz
LWP failed with code[501] message[Protocol scheme '>>My Proxy setting here<<' is
 not supported]
Fetching with LWP:
  http://cpan.perl.org/authors/01mailrc.txt.gz
LWP failed with code[501] message[Protocol scheme '>>My Proxy setting here<<' is
 not supported]
No external ftp command available


I would like to connect to one of the following sites to get 'authors/01mailrc.t
xt.gz':

Can someone help me on installing Math::BigInt::GMP.

Thanks,
Philip.
# 9  
Old 02-27-2009
Ok, an update here again. I added
Code:
http://cpan.uwinnipeg.ca/PPMPackages/10xx/

onto ppm repository and it loaded the modules i needed, Math-Pari, GMP, etc....

But now when i goto run my perl script, i'm recieving this error.

Code:
The getpwuid function is unimplemented at C:/Perl/site/lib/Net/SSH/Perl/SSH2.pm
line 39, <GEN0> line 1.

How can i fix this?

Thanks,
Philip.


UPDATE::

I've installed Modules,

Net-SSH2
Net-SSH-Perl
NET-SSH

now i receive the following error:
Code:
The getpwuid function is unimplemented at C:/Perl/site/lib/Net/SSH/Perl.pm line
110.

Thanks.

Last edited by Phi01; 02-27-2009 at 10:35 AM.. Reason: coded links and Update
# 10  
Old 02-28-2009
Please, can someone help me??
# 11  
Old 02-28-2009
The short of it is that the system you are running the script on does not support getpwuid. I don't know what you can do about it though.
# 12  
Old 03-02-2009
Quote:
Originally Posted by KevinADC
The short of it is that the system you are running the script on does not support getpwuid. I don't know what you can do about it though.
My system is Windows XP, surly i can run a connection script to a unix box on that.

I'm having these errors now, with these scripts, maybe this will help in me getting an answe. I'm using this script to create a connection.

Code:
use Net::SSH::Perl::SSH1 ;

$scon = Net::SSH::Perl->new ("com123.mynetwork.mydomain.com");
$scon->login("user123","pass123");
print "looking around ...\n";
($output,$errors,$exit) = $scon->cmd("ls -l");
print $output;

With this error:
Code:
Can't set socket non-blocking: Bad file descriptor at C:/Perl/site/lib/Net/SSH/P
erl.pm line 217.

Another Example:
Code:
#!/opt/local/bin/perl
#
# checkDiskspace.pl: See if any partitions are greater than a percentage and notify
#
use strict;
use warnings;

use Net::SSH::Perl;
use Math::BigInt::GMP;  # Don't forget this!

$| = 1;

my $alert_percent = 75;
my $server = 'com123.mynetwork.mydomain.com';
my $username = 'user123';
my $password = 'pass123';


# However you wanna notify yourself (like email)
sub alert_notify {
    my $message = shift;
    print "STUB: $message\n";
}

# Log into server
print "Creating ssh object... ";
my $ssh = Net::SSH::Perl->new($server); # Error check this
print "done\n";
print "Logging into server... ";
$ssh->login($username, $password); # Error check this
print "done\n";

# Check df
my $command = "df";
print "Running command ($command)... ";
my ($stdout, $stderr, $exit) = $ssh->cmd($command); # Check output
print "done\n";

# Find percentage
foreach my $df_line (split(/\n/, $stdout)) {
    # If disk space usage percent > $alert_percent, notify
    if ($df_line =~ /\s+(\d+)%\s+(\/.*)/ && $1 >= $alert_percent) {
        alert_notify ("[$server] device $2 at $1 percent!");
    }
}

With this error:
Code:
Creating ssh object... Can't set socket non-blocking: Bad file descriptor at C:/
Perl/site/lib/Net/SSH/Perl.pm line 217.

Final Example, this time the dos command promt hangs, i'm still waiting to see if anything happens.

Code:
use strict;
use warnings;

use Net::SSH::Perl;

my $server = 'alpha12z';
my $user = 'user123';
my $pwd = 'pass123';

my $ssh = Net::SSH::Perl->new($server);

$ssh-> login($user, $pwd);
my ($out, $err, $exit) = $ssh-> cmd("ls");

The Result is that the command prompt hangs, i'm gracefully waiting and hoping for a connection, at this point i will be happy with any connection even a slow one.!!
# 13  
Old 03-02-2009
Just want to say to Mods, my post are for updates on where i am with this problem and are not to bump my posts.

UPDATE:

I commented out the lines
Code:
defined($sock->blocking(0))
 or die "Can't set socket non-blocking:  $!";

On "C:\perl\site\net\ssh\perl.pm"

Now the program seems to connect to my server, But its not executing the commands. Is there a way of debugging or seening what's happening here?

Why aren't my commands executing?
Is there a work around for this?

UPDATE:

Using adding the addition on the line
Code:
$ssh = Net::SSH::Perl->new("com123.mynetwork.mydomain.com",(protocol=>'2',port=>'22',debug=>'true'));

I can see the following debug information:
Code:
channel 1: open confirm rwindow 0 rmax 32768

It seems to freeze on this line, does anyone know whats happening here?

UPDATE 3:

Ok, i have gotten the commands to exectured in the program by sending the output to a file.
Here is the command
Code:
($output,$errors,$exit) = $scon->cmd('ls > /tmp/file.out',"\n");

When i use this line the program doesn't hang. If i replace it with
Code:
($output, $errors, $exit) = $scon->cmd('ls');

The program hangs!!

Why is this?
Is there a way around this, or will i have to do an ftp to grab the file and read its contents.
Please Help!

Last edited by Phi01; 03-02-2009 at 01:15 PM.. Reason: Update
# 14  
Old 03-02-2009
There is really no way to know why your program hangs. All anyone could do is make suggestions to try his-or-that, but you actually seem to be doing an excellent job yourself finding answers to your questions. I have lno experience with what you are doing so I have no personal history I can recall and offer salient suggestions, maybe another user will. If not, you can alwyas take this over to perlmonks.com where the users are all perl users and have lots of experience outside of perl as well.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl script module

I took the copy of the production module to the home directory and executing the module. one of the test prdmsk.pm module is present in the home directory ctskk. would like to know whether the below syntax is correct. use strict; use lib "/home/ssprod/ctskk"; use lib::Prdmsk; ... (0 Replies)
Discussion started by: ramkumar15
0 Replies

2. Shell Programming and Scripting

Perl module

I am recieiving an out of memory issue in my perl module while updating the records in the oracle table. Let me know what are the check or troubleshoot steps need to be done from my end to fix the issue. (1 Reply)
Discussion started by: ramkumar15
1 Replies

3. Shell Programming and Scripting

Perl SSH without a perl module

I'm trying to create a perl script that will do 1 SSH session, but be able to write multiple commands to the session and receive multiple outputs. I know there are modules out there like Net:SSH::Perl, but I'm not allowed to use it. I was thinking of doing something like an open3 on an ssh... (4 Replies)
Discussion started by: mrwatkin
4 Replies

4. Shell Programming and Scripting

calling perl subroutine from perl expect module

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

5. Shell Programming and Scripting

Which Perl Module to use?

Hi, I need to read an excel binary file and write the data to a text file. Is it possible using Spreadsheet-ParseExcel-0.58 ? If not, is there any module available in CPAN to do this? Thanks, Js (1 Reply)
Discussion started by: jisha
1 Replies

6. UNIX for Dummies Questions & Answers

help in writing perl module

Hi i have written a perl script which was then converted to perl module by me. it works as expected. but i have to put it on many servers so i want to build a package for it. i dont know how to do that. just to check i copied perl module in "lib" directory which is working. ( directly copied... (1 Reply)
Discussion started by: zedex
1 Replies

7. Shell Programming and Scripting

Help with Perl Module

I dont know if this is a dumb question, but I am unable to move ahead and need help - There is a perl module called Header.pm which was written by someone else. I am trying to write a simple perl script which uses a function provided by the module. The function has been exported by the module... (9 Replies)
Discussion started by: NewDeb
9 Replies

8. Shell Programming and Scripting

Perl Module Help

Hi All, I am using a perl module Win32::AdminMisc in my perl script. When i running in activestate perl v5.10.0 it shows folling error --- Can't locate loadable object for module Win32::AdminMisc in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib .) at example.pl Please reply. ... (7 Replies)
Discussion started by: suprcool
7 Replies

9. Shell Programming and Scripting

perl module question

Couple questions on perl module.. 1)where is the best place on web where it tells you what modules can do? For example, use Text::Autoformat Where is the best place on line or via command line to find the exact capability of autoformat? 2)Is there already a perl module to read *.cap... (1 Reply)
Discussion started by: convenientstore
1 Replies

10. Shell Programming and Scripting

Replace Perl Module name in all Perl scripts

I want to replace a Perl module name in all my Perl Scripts in the cgi-bin directory. How is it possible? I have the following statement in my scripts use myUtil; I want to change it to use myUtil777; Regards, Rahul (2 Replies)
Discussion started by: rahulrathod
2 Replies
Login or Register to Ask a Question