Simpler Navigation for Servers and Operating Systems - Please Update Your Bookmarks
Completed: a much simpler Servers and Operating Systems section of the Community. We combined many of the older boards, so you won't have to click through so many levels to get at the information you need. Check the consolidated boards here as many sub-forums are now single boards.
If you have bookmarked forums or discussion boards in Servers and Operating Systems, we suggest you check and update them as needed.
Languages and Scripting
cancel
Showing results for 
Search instead for 
Did you mean: 

perl : instmodsh : update inventory for installed Perl modules

support_billa
Valued Contributor

perl : instmodsh : update inventory for installed Perl modules

hello,

 

- with instmodsh command i find out what modules are already installed on my system.

 

- we have following system

    - at a one server ( i named it software depot server ) we install a perl modul to a different directory (INSTALLDIRS="vendor").

   - then we use swpackage to create a software depot with the files of the perl modul.

   - finally we install a perl modul with "swinstall"

 

this system works well and the perl modul works well after installation with "swinstall" .

but now i find out, i can't see the perl modul with "instmodsh"
when i install it interactive with "perl Makefile.PL" and "make install", i can see it with "instmodsh".

 

Example of Output of "make install" :

Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Writing /opt/perl_32/lib/vendor_perl/5.8.8/IA64.ARCHREV_0-thread-multi/auto/Filesys/Df/.packlist
Appending installation info to /opt/perl_32/lib/5.8.8/IA64.ARCHREV_0-thread-multi/perllocal.pod

 

so i think, i have to start a command  to update the inventory for installed Perl modules ?

i think , it is in the created "Makefile" ?

 

regards

1 REPLY
Highlighted
support_billa
Valued Contributor

Re: perl : instmodsh : update inventory for installed Perl modules

i solved my problem:

 

first part is to  show installation config:

 

perl -we'use Config; use Data::Dumper; print Dumper \%Config;'

 


here my solution:

make -n "DESTDIR=<destdir>" install

 

shows, what would be done in DESTDIR=<destdir>

after installation with swinstall i do following steps:

- search for Variable SITEARCHEXP in File "Makefile"

in Makefile is the Packlist defined like :

$(SITEARCHEXP)/auto/$(FULLEXT)/.packlist

Example: SITEARCHEXP = /opt/perl_32/lib/site_perl/5.8.8/IA64.ARCHREV_0-thread-multi
FULLEXT = <Module>::<Mod1>

After deleting of  Original Packlist , i do following programm section:.

/usr/bin/perl -MExtUtils::Install -e 'install({@ARGV}, '\''0'\'', 0, '\''0'\'');' \
read /opt/perl_32/lib/site_perl/5.8.8/IA64.ARCHREV_0-thread-multi/auto/<Module>/<Mod1>/.packlist \
write <destdir>/opt/perl_32/lib/site_perl/5.8.8/IA64.ARCHREV_0-thread-multi/auto/<Module>/<Mod1>/.packlist \
blib/lib <destdir>/opt/perl_32/lib/site_perl/5.8.8 \
blib/arch <destdir>/opt/perl_32/lib/site_perl/5.8.8/IA64.ARCHREV_0-thread-multi \
blib/bin <destdir>/opt/perl_32/bin \
blib/script <destdir>/opt/perl_32/bin \
blib/man1 <destdir>/opt/perl_32/man/man1 \
blib/man3 <destdir>/opt/perl_32/man/man3

/usr/bin/perl "-MExtUtils::Command::MM" -e warn_if_old_packlist \
/opt/perl_32/lib/5.8.8/IA64.ARCHREV_0-thread-multi/auto/<Module>/<Mod1>

echo Appending installation info to <destdir>/opt/perl_32/lib/5.8.8/IA64.ARCHREV_0-thread-multi/perllocal.pod
/usr/bin/perl "-MExtUtils::Command" -e mkpath <destdir>/opt/perl_32/lib/5.8.8/IA64.ARCHREV_0-thread-multi
/usr/bin/perl "-MExtUtils::Command::MM" -e perllocal_install \
"Module" "<Module>::<Mod1>" \
"installed into" "/opt/perl_32/lib/site_perl/5.8.8" \
LINKTYPE "dynamic" \
VERSION "0.92" \
EXE_FILES "" \
>> <destdir>/opt/perl_32/lib/5.8.8/IA64.ARCHREV_0-thread-multi/perllocal.pod

 


The Perl Module Manager  shows the modules like /usr/bin/perlmod -l