PERL: Difference between revisions
No edit summary |
|||
(18 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
== RHEL7 == | |||
To see what modules are installed already: | |||
perl -MFile::Find=find -MFile::Spec::Functions -Tlw -e 'find { wanted => sub { print canonpath $_ if /\.pm\z/ }, no_chdir => 1 }, @INC' | |||
'''Pezca-1.3:''' | |||
* yum install perl-DBD-MySQL | |||
* setenv EPICS_EXTENSIONS /usr/clas12/release/0.3/epics/apps | |||
* export EPICS_EXTENSIONS=/usr/clas12/release/0.3/epics/apps | |||
* perl Makefile.PL INSTALL_BASE=/usr/lib64/perl5/vendor_perl | |||
* make | |||
* 'install' puts it in some wrong place, do following: | |||
cp Pezca.pm /usr/lib64/perl5/vendor_perl/ | |||
== old stuff == | |||
To see what modules are installed already, run command ''perldoc perllocal''. | |||
Check module example: ''perl -MRRDs -le 'print q(ok!)' ''. | |||
We are installing PERL modules directly into the PERL system location. Normally PERL modiles will be obtained from [http://www.cpan.org/] in a form of tar files and placed in /usr/local/downloads. For every platform they must be copied to /usr/local/src, untared and installed. Following modules must be installed: | We are installing PERL modules directly into the PERL system location. Normally PERL modiles will be obtained from [http://www.cpan.org/] in a form of tar files and placed in /usr/local/downloads. For every platform they must be copied to /usr/local/src, untared and installed. Following modules must be installed: | ||
Pezca | Pezca | ||
Line 13: | Line 37: | ||
IO-Compress-Bzip2 | IO-Compress-Bzip2 | ||
IO-Compress-Zlib | IO-Compress-Zlib | ||
Compress-Zlib | Compress-Zlib (on RHEL5 it suggests to install with option) | ||
LWP (libwww-perl) (use default options when asked) | LWP (libwww-perl) (use default options when asked) | ||
XML-Parser | |||
'''NOTE:''' need for Arne's online plots: GD.pm, GNUPLOT_TO_PNG_GIF.pm, ONLINE_SUB.pm | |||
For installation instructions see README inside those packages. Usually you have to type: | For installation instructions see README inside those packages. Usually you have to type: | ||
Line 24: | Line 51: | ||
Following was noticed: | Following was noticed: | ||
* | * Pezca_0.3: After running 'perl Makefile.PL' and before 'gmake', modify 'Makefile': after '-Iinclude', add '-Iinclude/os/solaris -Iinclude/O.solaris' (adjust for OS; do not know why it did not happened during 'perl Makefile.PL' ...). Also, module 'osdTime.cc' must be compiled by 'CC', not by 'cc' as it is happening (just go to 'libCom/os/generic', type 'gmake', copy last failed command, replace 'cc' by 'CC' and execute). | ||
* | * Pezca_0.4: After running 'perl Makefile.PL.ontop' and before 'gmake', modify 'Makefile': after -I.../include/os add '/solaris' with corresponding flavor. Also, version 0.4 can be (and must be) compiled using our EPICS, not the one which comes with Pezca. To do so EPICS_BASE and EPICS_EXTENSIONS environment variables must be defined, and configuring must be done by command ''perl Makefile.PL.ontop''. On solaris-x86, modify ''platform_ontop.pm'' as following: | ||
# platform dependant sub-directory for include files (on sparc-solaris probably the same using ''solaris-sparc''): | |||
# platform dependant sub-directory for include files: | |||
my %os_inc_subdir= ('linux-x86' => 'Linux', | my %os_inc_subdir= ('linux-x86' => 'Linux', | ||
'win32-x86' => 'WIN32', | 'win32-x86' => 'WIN32', | ||
Line 34: | Line 60: | ||
'solaris' => 'solaris', <----- added | 'solaris' => 'solaris', <----- added | ||
); | ); | ||
# platform dependant sub-directory for libraries in the base: | # platform dependant sub-directory for libraries in the base: | ||
my %os_b_lib_subdir= ('linux-x86' => 'linux-x86', | my %os_b_lib_subdir= ('linux-x86' => 'linux-x86', | ||
Line 41: | Line 66: | ||
'solaris' => 'solaris-x86', <----- added | 'solaris' => 'solaris-x86', <----- added | ||
); | ); | ||
# platform dependant sub-directory for libraries in the extensions directory: | # platform dependant sub-directory for libraries in the extensions directory: | ||
my %os_e_lib_subdir= ('linux-x86' => 'linux-x86', | my %os_e_lib_subdir= ('linux-x86' => 'linux-x86', | ||
Line 71: | Line 95: | ||
Install all modules on one machine of each flavor and execute following for the rest: | Install all modules on one machine of each flavor and execute following for the rest: | ||
cd /usr/local/src/Pezca-0. | cd /usr/local/src/Pezca-0.4 | ||
gmake install | gmake install | ||
cd /usr/local/src/Tk-804.027/ | cd /usr/local/src/Tk-804.027/ | ||
Line 100: | Line 124: | ||
gmake install | gmake install | ||
cd /usr/local/src/libwww-perl-5.808/ | cd /usr/local/src/libwww-perl-5.808/ | ||
gmake install | |||
cd /usr/local/src/XML-Parser-2.36/ | |||
gmake install | gmake install |
Latest revision as of 14:06, 2 December 2015
RHEL7
To see what modules are installed already:
perl -MFile::Find=find -MFile::Spec::Functions -Tlw -e 'find { wanted => sub { print canonpath $_ if /\.pm\z/ }, no_chdir => 1 }, @INC'
Pezca-1.3:
- yum install perl-DBD-MySQL
- setenv EPICS_EXTENSIONS /usr/clas12/release/0.3/epics/apps
- export EPICS_EXTENSIONS=/usr/clas12/release/0.3/epics/apps
- perl Makefile.PL INSTALL_BASE=/usr/lib64/perl5/vendor_perl
- make
- 'install' puts it in some wrong place, do following:
cp Pezca.pm /usr/lib64/perl5/vendor_perl/
old stuff
To see what modules are installed already, run command perldoc perllocal.
Check module example: perl -MRRDs -le 'print q(ok!)' .
We are installing PERL modules directly into the PERL system location. Normally PERL modiles will be obtained from [1] in a form of tar files and placed in /usr/local/downloads. For every platform they must be copied to /usr/local/src, untared and installed. Following modules must be installed:
Pezca Tk DBI DBD::mysql Time URI HTML::Tagset HTML::Parser IO-Compress-Base Compress-Raw-Zlib (see note below) Compress-Raw-Bzip2 IO-Compress-Bzip2 IO-Compress-Zlib Compress-Zlib (on RHEL5 it suggests to install with option) LWP (libwww-perl) (use default options when asked) XML-Parser
NOTE: need for Arne's online plots: GD.pm, GNUPLOT_TO_PNG_GIF.pm, ONLINE_SUB.pm
For installation instructions see README inside those packages. Usually you have to type:
perl Makefile.PL gmake gmake test (optionally) gmake install
Following was noticed:
- Pezca_0.3: After running 'perl Makefile.PL' and before 'gmake', modify 'Makefile': after '-Iinclude', add '-Iinclude/os/solaris -Iinclude/O.solaris' (adjust for OS; do not know why it did not happened during 'perl Makefile.PL' ...). Also, module 'osdTime.cc' must be compiled by 'CC', not by 'cc' as it is happening (just go to 'libCom/os/generic', type 'gmake', copy last failed command, replace 'cc' by 'CC' and execute).
- Pezca_0.4: After running 'perl Makefile.PL.ontop' and before 'gmake', modify 'Makefile': after -I.../include/os add '/solaris' with corresponding flavor. Also, version 0.4 can be (and must be) compiled using our EPICS, not the one which comes with Pezca. To do so EPICS_BASE and EPICS_EXTENSIONS environment variables must be defined, and configuring must be done by command perl Makefile.PL.ontop. On solaris-x86, modify platform_ontop.pm as following:
# platform dependant sub-directory for include files (on sparc-solaris probably the same using solaris-sparc): my %os_inc_subdir= ('linux-x86' => 'Linux', 'win32-x86' => 'WIN32', 'hpux-11' => 'hp700', 'solaris' => 'solaris', <----- added ); # platform dependant sub-directory for libraries in the base: my %os_b_lib_subdir= ('linux-x86' => 'linux-x86', 'win32-x86' => 'win32-x86', 'hpux-11' => 'hp700', 'solaris' => 'solaris-x86', <----- added ); # platform dependant sub-directory for libraries in the extensions directory: my %os_e_lib_subdir= ('linux-x86' => 'linux-x86', 'win32-x86' => 'win32-x86', 'hpux-11' => 'hp700', 'solaris' => 'solaris-x86', <----- added );
- DBI:
clon01:DBI-1.52> perl Makefile.PL *** Note: The optional PlRPC-modules (RPC::PlServer etc) are not installed. If you want to use the DBD::Proxy driver and DBI::ProxyServer modules, then you'll need to install the RPC::PlServer, RPC::PlClient, Storable and Net::Daemon modules. The CPAN Bundle::DBI may help you. You can install them any time after installing the DBI. You do *not* need these modules for typical DBI usage. Optional modules are available from any CPAN mirror, in particular http://search.cpan.org/ http://www.perl.com/CPAN/modules/by-module http://www.perl.org/CPAN/modules/by-module ftp://ftp.funet.fi/pub/languages/perl/CPAN/modules/by-module
- Compress-Raw-Zlib:
sed -e "s|BUILD_ZLIB\s*= True|BUILD_ZLIB = False|" -e "s|INCLUDE\s*= ./zlib-src|INCLUDE = /usr/include|" -e "s|LIB\s*= ./zlib-src|LIB = /usr/lib|" config.in
Install all modules on one machine of each flavor and execute following for the rest:
cd /usr/local/src/Pezca-0.4 gmake install cd /usr/local/src/Tk-804.027/ gmake install cd /usr/local/src/DBI-1.52/ gmake install cd /usr/local/src/DBD-mysql-3.0008/ gmake install cd /usr/local/src/Time-modules-2006.0814/ gmake install cd /usr/local/src/URI-1.35/ gmake install cd /usr/local/src/HTML-Tagset-3.10/ gmake install cd /usr/local/src/HTML-Parser-3.56/ gmake install cd /usr/local/src/IO-Compress-Base-2.005/ gmake install cd /usr/local/src/Compress-Raw-Zlib-2.005/ gmake install cd /usr/local/src/Compress-Raw-Bzip2-2.005/ gmake install cd /usr/local/src/IO-Compress-Bzip2-2.005/ gmake install cd /usr/local/src/IO-Compress-Zlib-2.005/ gmake install cd /usr/local/src/Compress-Zlib-2.005/ gmake install cd /usr/local/src/libwww-perl-5.808/ gmake install cd /usr/local/src/XML-Parser-2.36/ gmake install