Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

174 lines
5.8 KiB

  1. If you read this file _as_is_, just ignore the funny characters you see.
  2. It is written in the POD format (see pod/perlpod.pod) which is specially
  3. designed to be readable as is.
  4. =head1 NAME
  5. README.aix - Perl version 5 on IBM Unix (AIX) systems
  6. =head1 DESCRIPTION
  7. This document describes various features of IBM's Unix operating
  8. system (AIX) that will affect how Perl version 5 (hereafter just Perl)
  9. is compiled and/or runs.
  10. =head2 Compiling Perl 5 on AIX
  11. When compiling Perl, you must use an ANSI C compiler. AIX does not ship
  12. an ANSI compliant C-compiler with AIX by default, but binary builds of
  13. gcc for AIX are widely available.
  14. At the moment of writing, AIX supports two different native C compilers,
  15. for which you have to pay: B<xlc> and B<VAC>. If you decide to use eiter
  16. of these two (which is quite a lot easier than using gcc), be sure to
  17. upgrade to the latest available patch level. Currently:
  18. xlC.C 3.1.4.0
  19. vac.C 4.4.0.3 (5.0 is already available)
  20. Perl can be compiled with either IBM's ANSI C compiler or with gcc.
  21. The former is recommended, as not only can it compile Perl with no
  22. difficulty, but also can take advantage of features listed later that
  23. require the use of IBM compiler-specific command-line flags.
  24. If you decide to use gcc, make sure your installation is recent and
  25. complete, and be sure to read the Perl README file for more gcc-specific
  26. details.
  27. =head2 OS level
  28. Before installing the patches to the IBM C-compiler you need to know the
  29. level of patching for the Operating System. IBM's command 'oslevel' will
  30. show the base, but is not always complete:
  31. # oslevel
  32. 4.3.0.0
  33. # lslpp -l | grep 'bos.rte '
  34. bos.rte 4.3.2.1 COMMITTED Base Operating System Runtime
  35. bos.rte 4.3.2.0 COMMITTED Base Operating System Runtime
  36. #
  37. =head2 Building Dynamic Extensions on AIX
  38. AIX supports dynamically loadable libraries (shared libraries).
  39. Shared libraries end with the suffix .a, which is a bit misleading,
  40. because *all* libraries are shared ;-).
  41. =head2 The IBM ANSI C Compiler
  42. All defaults for Configure can be used.
  43. If you've chosen to use vac 4, be sure to run 4.4.0.3. Older versions
  44. will turn up nasty later on.
  45. Here's a brief lead of how to upgrade the compiler to the latest
  46. level. Of course this is subject to changes. You can only upgrade
  47. versions from ftp-available updates if the first three digit groups
  48. are the same (in where you can skip intermediate unlike the patches
  49. in the developer snapshots of perl), or to one version up where the
  50. `base' is available. In other words, the AIX compiler patches are
  51. cumulative.
  52. vac.C.4.4.0.1 => vac.C.4.4.0.3 is OK (vac.C.4.4.0.2 not needed)
  53. xlC.C.3.1.3.3 => xlC.C.3.1.4.10 is NOT OK (xlC.C.3.1.4.0 is not available)
  54. # ftp ftp.software.ibm.com
  55. Connected to service.boulder.ibm.com.
  56. : welcome message ...
  57. Name (ftp.software.ibm.com:merijn): anonymous
  58. 331 Guest login ok, send your complete e-mail address as password.
  59. Password:
  60. ... accepted login stuff
  61. ftp> cd /aix/fixes/v4/
  62. ftp> dir other other.ll
  63. output to local-file: other.ll? y
  64. 200 PORT command successful.
  65. 150 Opening ASCII mode data connection for /bin/ls.
  66. 226 Transfer complete.
  67. ftp> dir xlc xlc.ll
  68. output to local-file: xlc.ll? y
  69. 200 PORT command successful.
  70. 150 Opening ASCII mode data connection for /bin/ls.
  71. 226 Transfer complete.
  72. ftp> bye
  73. ... goodbye messages
  74. # ls -l *.ll
  75. -rw-rw-rw- 1 merijn system 1169432 Nov 2 17:29 other.ll
  76. -rw-rw-rw- 1 merijn system 29170 Nov 2 17:29 xlc.ll
  77. On AIX 4.2 using xlC, we continue:
  78. # lslpp -l | fgrep 'xlC.C '
  79. xlC.C 3.1.4.9 COMMITTED C for AIX Compiler
  80. xlC.C 3.1.4.0 COMMITTED C for AIX Compiler
  81. # grep 'xlC.C.3.1.4.*.bff' xlc.ll
  82. -rw-r--r-- 1 45776101 1 6286336 Jul 22 1996 xlC.C.3.1.4.1.bff
  83. -rw-rw-r-- 1 45776101 1 6173696 Aug 24 1998 xlC.C.3.1.4.10.bff
  84. -rw-r--r-- 1 45776101 1 6319104 Aug 14 1996 xlC.C.3.1.4.2.bff
  85. -rw-r--r-- 1 45776101 1 6316032 Oct 21 1996 xlC.C.3.1.4.3.bff
  86. -rw-r--r-- 1 45776101 1 6315008 Dec 20 1996 xlC.C.3.1.4.4.bff
  87. -rw-rw-r-- 1 45776101 1 6178816 Mar 28 1997 xlC.C.3.1.4.5.bff
  88. -rw-rw-r-- 1 45776101 1 6188032 May 22 1997 xlC.C.3.1.4.6.bff
  89. -rw-rw-r-- 1 45776101 1 6191104 Sep 5 1997 xlC.C.3.1.4.7.bff
  90. -rw-rw-r-- 1 45776101 1 6185984 Jan 13 1998 xlC.C.3.1.4.8.bff
  91. -rw-rw-r-- 1 45776101 1 6169600 May 27 1998 xlC.C.3.1.4.9.bff
  92. # wget ftp://ftp.software.ibm.com/aix/fixes/v4/xlc/xlC.C.3.1.4.10.bff
  93. #
  94. On AIX 4.3 using vac, we continue:
  95. # lslpp -l | fgrep 'vac.C '
  96. vac.C 4.4.0.2 COMMITTED C for AIX Compiler
  97. vac.C 4.4.0.0 COMMITTED C for AIX Compiler
  98. # grep 'vac.C.4.4.0.*.bff' other.ll
  99. -rw-rw-r-- 1 45776101 1 13466624 May 26 1999 vac.C.4.4.0.1.bff
  100. -rw-rw-r-- 1 45776101 1 13473792 Aug 31 1999 vac.C.4.4.0.2.bff
  101. -rw-rw-r-- 1 45776101 1 13480960 May 19 20:32 vac.C.4.4.0.3.bff
  102. # wget ftp://ftp.software.ibm.com/aix/fixes/v4/other/vac.C.4.4.0.3.bff
  103. #
  104. Then execute the following command, and fill in its choices
  105. # smit install_update
  106. -> Install and Update from LATEST Available Software
  107. * INPUT device / directory for software [ vac.C.4.4.0.3.bff ]
  108. [ OK ]
  109. [ OK ]
  110. Follow the messages ... and you're done.
  111. =head2 Using GNU's gcc for building perl
  112. ... ?
  113. =head2 Using Large Files with Perl
  114. ... ?
  115. =head2 Threaded Perl
  116. ... ?
  117. =head2 64-bit Perl
  118. ... ?
  119. =head2 GDBM and Threads
  120. ... ?
  121. =head2 NFS filesystems and utime(2)
  122. ... ?
  123. =head1 AUTHOR
  124. H.Merijn Brand <[email protected]>
  125. Structure copied from README.hpux
  126. =head1 DATE
  127. Version 0.0.1: 16-10-2000
  128. =cut