📄 ch08_74.htm
字号:
<dt><i>LIB</i></dt><dd>Can be set only when <em class="emphasis">Makefile.PL</em> is run; bothINSTALLPRIVLIB and INSTALLSITELIB are set to the value of LIB.</p></dd><dt><i>LIBS</i></dt><dd>Anonymous array of alternative library specifications to be searchedfor (in order) until at least one library is found. Note that anyelement of the array contains a complete set of arguments for the<em class="emphasis">ld</em> command.</p></dd><dt><i>LINKTYPE</i></dt><dd>Should be used only to force static linking (see the<em class="emphasis">linkext</em> attribute below). Possible values are<tt class="literal">static</tt> or <tt class="literal">dynamic</tt>. Default is<tt class="literal">dynamic</tt> unless <tt class="literal">usedl=undef</tt> in<em class="emphasis">config.sh</em>.</p></dd><dt><i>MAKEAPERL</i></dt><dd>Boolean. Tells MakeMaker to include the rules for making a Perlbinary. Normally handled automatically by MakeMaker and not needed bythe user.</p></dd><dt><i>MAKEFILE</i></dt><dd>Name of the Makefile to be produced.</p></dd><dt><i>MAN1PODS</i></dt><dd>Reference to a hash of pod-containing files to be converted tomanpages and installed as requested at configure time. Default is allEXE_FILES files that include pod directives.</p></dd><dt><i>MAN3PODS</i></dt><dd>Reference to a hash of <em class="emphasis">.pm</em> and<em class="emphasis">.pod</em> files to be converted to manpages andinstalled as requested at configure time. Default is all<em class="emphasis">.pod</em> and any <em class="emphasis">.pm</em> files thatinclude pod directives.</p></dd><dt><i>MAP_TARGET</i></dt><dd>Name for new Perl binary if one will be produced. Default is<tt class="literal">perl</tt>.</p></dd><dt><i>MYEXTLIB</i></dt><dd>Name of library that the module builds and links to.</p></dd><dt><i>NAME</i></dt><dd>Perl module name for this module (e.g., DBD::Oracle). Defaults to thedirectory name but should be explicitly defined in the<em class="emphasis">Makefile.PL</em>.</p></dd><dt><i>NEEDS_LINKING</i></dt><dd>Boolean. Can be set to speed up MakeMaker processing a little bit,but not needed since MakeMaker will figure out if linking is needed.</p></dd><dt><i>NOECHO</i></dt><dd>Controls <em class="emphasis">make</em>'s echo(<tt class="literal">@</tt>) feature. Defaults to <tt class="literal">@</tt>. Bysetting it to an empty string, you can generate a Makefile that echosall commands. Used mainly in debugging MakeMaker itself.</p></dd><dt><i>NORECURS</i></dt><dd>Boolean. If set, inhibits descending into subdirectories.</p></dd><dt><i>OBJECT</i></dt><dd>List of object files. Defaults to<tt class="literal">$(BASEEXT)$(OBJ_EXT)</tt>; can be set to a long stringcontaining all object files.</p></dd><dt><i>OPTIMIZE</i></dt><dd>If set to <tt class="literal">-g</tt>, turns debugging on. Defaults to<tt class="literal">-O</tt>. Passed to subdirectory<em class="emphasis">make</em>s.</p></dd><dt><i>PERL</i></dt><dd>Perl binary for tasks that can be done by miniperl.</p></dd><dt><i>PERLMAINCC</i></dt><dd>The call to the program that can compile<em class="emphasis">perlmain.c</em>. Defaults to<tt class="literal">$(CC)</tt>.</p></dd><dt><i>PERL_LIB</i></dt><dd>Directory containing the Perl library to use.</p></dd><dt><i>PERL_ARCHLIB</i></dt><dd>Same as PERL_LIB for architecture-dependent files.</p></dd><dt><i>PERL_SRC</i></dt><dd>Directory containing the Perl source code. Avoid using thisattribute, since it may be undefined.</p></dd><dt><i>PL_FILES</i></dt><dd>Reference to hash of files to be processed as Perl programs. Bydefault, MakeMaker turns any <em class="emphasis">*.PL</em> file it finds(except the <em class="emphasis">Makefile.PL</em>) into a key and thebasename of the file into the value. The <em class="emphasis">*.PL</em>files are expected to produce output to the target files themselves.</p></dd><dt><i>PM</i></dt><dd>Reference to hash of <em class="emphasis">.pm</em> and<em class="emphasis">*.pl</em> files to be installed.</p></dd><dt><i>PMLIBDIRS</i></dt><dd>Reference to array of subdirectories containing library files.Defaults to <tt class="literal">['lib', $(BASEEXT)]</tt>. The directoriesare scanned, and any files they contain are installed in thecorresponding location in the library. A <tt class="literal">libscan</tt>method can be used to alter the behavior. Defining PM in the<em class="emphasis">Makefile.PL</em> overrides PMLIBDIRS.</p></dd><dt><i>PREFIX</i></dt><dd>Can be used to set the three INSTALL* attributes at once so they havePREFIX as a common directory node.</p></dd><dt><i>PREREQ_PM</i></dt><dd>Reference to a hash of modules that need to be available to run thismodule (e.g., Fcntl for SDBM_File). The name of each required moduleis the key, and the desired version is the value. If the requiredversion is 0, MakeMaker just checks to see if any version isinstalled.</p></dd><dt><i>SKIP</i></dt><dd>Reference to an array specifying sections of the Makefile thatshouldn't be written. Do not use the SKIP attributefor the negligible speedup, which may seriously damage the resultingMakefile.</p></dd><dt><i>TYPEMAPS</i></dt><dd>Reference to array of typemap filenames. Use when the typemaps are ina directory other than the current directory or when they are notnamed typemap. The last typemap in the list takes precedence, but atypemap in the current directory has highest precedence even if itisn't listed in TYPEMAPS. The default system typemaphas lowest precedence.</p></dd><dt><i>VERSION</i></dt><dd>Your version number for the package. Defaults to<tt class="literal">0.1</tt>. </p></dd><dt><i>VERSION_FROM</i></dt><dd>Names a file for MakeMaker to parse to find the version number forthe package, so you don't need to specify VERSION.The file must contain a single line to compute the version number.The first line in the file that contains the regular expression:</p><blockquote><pre class="code">/([\$*])(([\w:\']*)\bVERSION)\b.*\=/</pre></blockquote><p>is evaluated with <tt class="literal">eval</tt> and the result assigned toVERSION.</p></dd><dt><i>XS</i></dt><dd>Reference to a hash of <em class="emphasis">.xs</em> files. MakeMakerdefaults this. For example:</p><blockquote><pre class="code">{'name_of_file.xs' => 'name_of_file.c'}</pre></blockquote><p>The <em class="emphasis">.c</em> files are automatically deleted by a<em class="emphasis">make clean</em>.</p></dd><dt><i>XSOPT</i></dt><dd>String of options to pass to <em class="emphasis">xsubpp</em>, which mightinclude <tt class="literal">-C++</tt> or <tt class="literal">-extern</tt> but nottypemaps, which go in TYPEMAPS.</p></dd><dt><i>XSPROTOARG</i></dt><dd>May be set to an empty string, which is identical to<tt class="literal">-prototypes</tt> or <tt class="literal">-noprototypes</tt>.Defaults to the empty string.</p></dd><dt><i>XS_VERSION</i></dt><dd>Your version number for the package's<em class="emphasis">.xs</em> file. Defaults to the value of VERSION.</p></dd></dl><p>The following lowercase attributes can be used to pass parameters tothe methods that implement the corresponding part of the Makefile:</p><dl><dt><i><em class="emphasis">clean</em></i></dt><dd>Extra files to <tt class="literal">clean</tt>.</p></dd><dt><i><em class="emphasis">depend</em></i></dt><dd>Extra dependencies.</p></dd><dt><i><em class="emphasis">dist</em></i></dt><dd>Distribution options.</p></dd><dt><i><em class="emphasis">dynamic_lib</em></i></dt><dd>Options for dynamic library support.</p></dd><dt><i><em class="emphasis">installpm</em></i></dt><dd>Installation options related to AutoSplit. Deprecated as of MakeMaker5.23. See the <em class="emphasis">pm_to_blib</em> entry forExtUtils::Install.</p></dd><dt><i><em class="emphasis">linkext</em></i></dt><dd>Linking style.</p></dd><dt><i><em class="emphasis">macro</em></i></dt><dd>Extra macros to define.</p></dd><dt><i><em class="emphasis">realclean</em></i></dt><dd>Extra files to <em class="emphasis">make realclean</em>.</p></dd><dt><i><em class="emphasis">tool_autosplit</em></i></dt><dd>Attributes for the <tt class="literal">tool_autosplit</tt> method.</p></dd></dl><p>If specifying attributes isn't sufficient toaccomplish what you want, you can define your own subroutines in the<em class="emphasis">Makefile.PL</em> that return the text to be writtento the Makefile. You can also override MakeMaker'ssubroutines (described in <a href="ch08_85.htm#perlnut2-CHP-8-SECT-85">Section 8.85, "ExtUtils::MM_Unix"</a>) this way.</p><hr width="684" align="left" /><div class="navbar"><table width="684" border="0"><tr><td align="left" valign="top" width="228"><a href="ch08_73.htm"><img src="../gifs/txtpreva.gif" alt="Previous" border="0" /></a></td><td align="center" valign="top" width="228"><a href="index.htm"><img src="../gifs/txthome.gif" alt="Home" border="0" /></a></td><td align="right" valign="top" width="228"><a href="ch08_75.htm"><img src="../gifs/txtnexta.gif" alt="Next" border="0" /></a></td></tr><tr><td align="left" valign="top" width="228">8.73. ExtUtils::Liblist</td><td align="center" valign="top" width="228"><a href="index/index.htm"><img src="../gifs/index.gif" alt="Book Index" border="0" /></a></td><td align="right" valign="top" width="228">8.75. ExtUtils::Manifest</td></tr></table></div><hr width="684" align="left" /><img src="../gifs/navbar.gif" usemap="#library-map" border="0" alt="Library Navigation Links" /><p><p><font size="-1"><a href="copyrght.htm">Copyright © 2002</a> O'Reilly & Associates. All rights reserved.</font></p><map name="library-map"><area shape="rect" coords="1,0,85,94" href="../index.htm"><area shape="rect" coords="86,1,178,103" href="../lwp/index.htm"><area shape="rect" coords="180,0,265,103" href="../lperl/index.htm"><area shape="rect" coords="267,0,353,105" href="../perlnut/index.htm"><area shape="rect" coords="354,1,446,115" href="../prog/index.htm"><area shape="rect" coords="448,0,526,132" href="../tk/index.htm"><area shape="rect" coords="528,1,615,119" href="../cookbook/index.htm"><area shape="rect" coords="617,0,690,135" href="../pxml/index.htm"></map></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -