PERL: Difference between revisions

From CLONWiki
Jump to navigation Jump to search
Boiarino (talk | contribs)
No edit summary
Boiarino (talk | contribs)
No edit summary
Line 27: Line 27:


* Pezca: newer 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_EXTENSION environment variables must be defined, and configuring must be done by command
* Pezca: newer 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_EXTENSION 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:
perl Makefile.PL.ontop. On solaris-x86, modify ''platform_ontop.pm'' as following:
  # platform dependant sub-directory for include files:
  # platform dependant sub-directory for include files:
  my %os_inc_subdir= ('linux-x86' => 'Linux',
  my %os_inc_subdir= ('linux-x86' => 'Linux',
Line 34: Line 34:
                     '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 40:
                       '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',

Revision as of 13:34, 6 April 2009

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
LWP (libwww-perl) (use default options when asked)

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: 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: newer 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_EXTENSION 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:
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.3.1
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