Better support for multicharacter foldings.
[p5sagit/p5-mst-13.2.git] / README.hpux
index fcc9d02..dd11e49 100644 (file)
@@ -12,6 +12,32 @@ This document describes various features of HP's Unix operating system
 (HP-UX) that will affect how Perl version 5 (hereafter just Perl) is
 compiled and/or runs.
 
+=head2 Using perl as shipped with HP-UX
+
+As of application release September 2001, HP-UX 11.00 is shipped with
+perl-5.6.1 in /opt/perl. The first occurrence is on CD 5012-7954 and
+can be installed using
+
+    swinstall -s /cdrom perl
+
+assuming you have mounted that CD on /cdrom. In this version the
+following modules are installed:
+
+    ActivePerl::DocTools-0.04   HTML::Parser-3.19   XML::DOM-1.25
+    Archive::Tar-0.072          HTML::Tagset-3.03   XML::Parser-2.27
+    Compress::Zlib-1.08         MIME::Base64-2.11   XML::Simple-1.05
+    Convert::ASN1-0.10          Net-1.07            XML::XPath-1.09
+    Digest::MD5-2.11            PPM-2.1.5           XML::XSLT-0.32
+    File::CounterFile-0.12      SOAP::Lite-0.46     libwww-perl-5.51
+    Font::AFM-1.18              Storable-1.011      libxml-perl-0.07
+    HTML-Tree-3.11              URI-1.11            perl-ldap-0.23
+
+The build is a portable hppa-1.1 multithread build that supports large
+files compiled with gcc-2.9-hppa-991112
+
+If you perform a new installation, then Perl will be installed
+automatically.
+
 =head2 Compiling Perl 5 on HP-UX
 
 When compiling Perl, you must use an ANSI C compiler.  The C compiler
@@ -44,8 +70,8 @@ The original version of PA-RISC, HP no longer sells any system with this chip.
 
 The following systems contained PA-RISC 1.0 chips:
 
-    600, 635, 645, 808, 815, 822, 825, 832, 834, 835, 840, 842, 845, 850, 852,
-    855, 860, 865, 870, 890
+    600, 635, 645, 808, 815, 822, 825, 832, 834, 835, 840, 842, 845, 850,
+    852, 855, 860, 865, 870, 890
 
 =head2 PA-RISC 1.1
 
@@ -54,15 +80,16 @@ system.
 
 The following systems contain with PA-RISC 1.1 chips:
 
-    705, 710, 712, 715, 720, 722, 725, 728, 730, 735, 742, 743, 745, 747, 750,
-    755, 770, 777, 778, 779, 800, 801, 803, 806, 807, 809, 811, 813, 816, 817,
-    819, 821, 826, 827, 829, 831, 837, 839, 841, 847, 849, 851, 856, 857, 859,
-    867, 869, 877, 887, 891, 892, 897, A180, A180C, B115, B120, B132L, B132L+,
-    B160L, B180L, C100, C110, C115, C120, C160L, D200, D210, D220, D230, D250,
-    D260, D310, D320, D330, D350, D360, D410, DX0, DX5, DZO, E25, E35, E45,
-    E55, F10, F20, F30, G30, G40, G50, G60, G70, H20, H30, H40, H50, H60, H70,
-    I30, I40, I50, I60, I70, J200, J210, J210XC, K100, K200, K210, K220, K230,
-    K400, K410, K420, S700i, S715, S724, S760, T500, T520
+    705, 710, 712, 715, 720, 722, 725, 728, 730, 735, 742, 743, 744, 745,
+    747, 750, 755, 770, 777, 778, 779, 800, 801, 803, 806, 807, 809, 811,
+    813, 816, 817, 819, 821, 826, 827, 829, 831, 837, 839, 841, 847, 849,
+    851, 856, 857, 859, 867, 869, 877, 887, 891, 892, 897, A180, A180C,
+    B115, B120, B132L, B132L+, B160L, B180L, C100, C110, C115, C120,
+    C160L, D200, D210, D220, D230, D250, D260, D310, D320, D330, D350,
+    D360, D410, DX0, DX5, DXO, E25, E35, E45, E55, F10, F20, F30, G30,
+    G40, G50, G60, G70, H20, H30, H40, H50, H60, H70, I30, I40, I50, I60,
+    I70, J200, J210, J210XC, K100, K200, K210, K220, K230, K400, K410,
+    K420, S700i, S715, S744, S760, T500, T520
 
 =head2 PA-RISC 2.0
 
@@ -72,12 +99,23 @@ The most recent upgrade to the PA-RISC design, it added support for
 As of the date of this document's last update, the following systems
 contain PA-RISC 2.0 chips (this is very likely to be out of date):
 
-    700, 780, 781, 782, 783, 785, 802, 804, 810, 820, 861, 871, 879, 889, 893,
-    895, 896, 898, 899, B1000, C130, C140, C160, C180, C180+, C180-XP, C200+,
-    C400+, C3000, C360, CB260, D270, D280, D370, D380, D390, D650, J220, J2240,
-    J280, J282, J400, J410, J5000, J7000, K250, K260, K260-EG, K270, K360,
-    K370, K380, K450, K460, K460-EG, K460-XP, K470, K570, K580, L1000, L2000,
-    N4000, R380, R390, T540, T600, V2000, V2200, V2250, V2500
+    700, 780, 781, 782, 783, 785, 802, 804, 810, 820, 861, 871, 879, 889,
+    893, 895, 896, 898, 899, A400, A500, B1000, B2000, C130, C140, C160,
+    C180, C180+, C180-XP, C200+, C400+, C3000, C360, C3600, CB260, D270,
+    D280, D370, D380, D390, D650, J220, J2240, J280, J282, J400, J410,
+    J5000, J5500XM, J5600, J7000, J7600, K250, K260, K260-EG, K270, K360,
+    K370, K380, K450, K460, K460-EG, K460-XP, K470, K570, K580, L1000,
+    L2000, L3000, N4000, R380, R390, RP5400, RP5430, RP5450, RP5470,
+    RP7400, RP8400, SD16000, SD32000, SD64000, T540, T600, V2000, V2200,
+    V2250, V2500, V2600
+
+=head2 Itanium
+
+HP also ships servers with the 128-bit Itanium processor(s). As of the
+date of this document's last update, the following systems contain
+Itanium chips (this is very likely to be out of date):
+
+    RX4610, RX9610
 
 A complete list of models at the time the OS was built is in the file
 /opt/langtools/lib/sched.models.  The first column corresponds to the
@@ -90,7 +128,7 @@ chip type used. (Start browsing at the bottom to prevent confusion ;-)
 An executable compiled on a PA-RISC 2.0 platform will not execute on a
 PA-RISC 1.1 platform, even if they are running the same version of
 HP-UX.  If you are building Perl on a PA-RISC 2.0 platform and want that
-Perl to to also run on a PA-RISC 1.1, the compiler flags +DAportable and
+Perl to also run on a PA-RISC 1.1, the compiler flags +DAportable and
 +DS32 should be used.
 
 It is no longer possible to compile PA-RISC 1.0 executables on either
@@ -163,10 +201,13 @@ library that is already linked into perl.
 
 Some extensions, like DB_File and Compress::Zlib use/require prebuilt
 libraries for the perl extensions/modules to work. If these libraries
-are built using the default configuration, it might happen that you run
-into an error like "invalid loader fixup" during load phase. HP is aware
-of this problem and address it at
-  http://devresource.hp.com/devresource/Docs/TechTips/cxxTips.html#tip13
+are built using the default configuration, it might happen that you
+run into an error like "invalid loader fixup" during load phase.
+HP is aware of this problem.  Search the HP-UX cxx-dev forums for
+discussions about the subject.  The short answer is that B<everything>
+(all libraries, everything) must be compiled with C<+z> or C<+Z> to be
+PIC (position independent code).  In HP-UX 11.00 or newer the linker
+error message should tell the name of the offending object file.
 
 A more general approach is to intervene manually, as with an example for
 the DB_File module, which requires SleepyCat's libdb.sl:
@@ -261,12 +302,12 @@ is listed before -lc in the list of libraries to link Perl with. The
 hints provided for HP-UX during Configure will try very hard to get
 this right for you.
 
-HP-UX versions before 10.30 require a seperate installation of a POSIX
+HP-UX versions before 10.30 require a separate installation of a POSIX
 threads library package. Two examples are the HP DCE package, available
 on "HP-UX Hardware Extensions 3.0, Install and Core OS, Release 10.20,
 April 1999 (B3920-13941)" or the Freely available PTH package, available
 though worldwide HP-UX mirrors of precompiled packages
-(e.g. http://hpux.tn.tudelft.nl/hppd/hpux/alpha.html)
+(e.g. http://hpux.tn.tudelft.nl/hppd/hpux/)
 
 =head2 64-bit Perl on HP-UX
 
@@ -348,6 +389,33 @@ system.
 In general, a value of 256MB (or "256*1024*1024") is sufficient for
 Perl to compile at maximum optimization.
 
+=head1 nss_delete core dump from op/pwent or op/grent
+
+You may get a bus error core dump from the op/pwent or op/grent
+tests. If compiled with -g you will see a stack trace much like
+the following:
+
+  #0  0xc004216c in  () from /usr/lib/libc.2
+  #1  0xc00d7550 in __nss_src_state_destr () from /usr/lib/libc.2
+  #2  0xc00d7768 in __nss_src_state_destr () from /usr/lib/libc.2
+  #3  0xc00d78a8 in nss_delete () from /usr/lib/libc.2 
+  #4  0xc01126d8 in endpwent () from /usr/lib/libc.2 
+  #5  0xd1950 in Perl_pp_epwent () from ./perl
+  #6  0x94d3c in Perl_runops_standard () from ./perl
+  #7  0x23728 in S_run_body () from ./perl
+  #8  0x23428 in perl_run () from ./perl
+  #9  0x2005c in main () from ./perl
+
+The key here is the C<nss_delete> call.  One workaround for this
+bug seems to be to create add to the file F</etc/nsswitch.conf>
+(at least) the following lines
+
+  group: files 
+  passwd: files
+
+Whether you are using NIS does not matter.  Amazingly enough,
+the same bug affects also Solaris.
+
 =head1 AUTHOR
 
 Jeff Okamoto <okamoto@corp.hp.com>
@@ -356,6 +424,6 @@ With much assistance regarding shared libraries from Marc Sabatella.
 
 =head1 DATE
 
-Version 0.6.3: 2001-05-16
+Version 0.6.4: 2001-10-09
 
 =cut