⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme

📁 以便Apache与其他服务进行整合 Mod_JK安装
💻
📖 第 1 页 / 共 2 页
字号:
You can specify CC and CFLAGS in the normal way to the "configure" command, inorder to cross-compile PCRE for some other host. However, during the buildingprocess, the dftables.c source file is compiled *and run* on the local host, inorder to generate the default character tables (the chartables.c file). Ittherefore needs to be compiled with the local compiler, not the cross compiler.You can do this by specifying CC_FOR_BUILD (and if necessary CFLAGS_FOR_BUILD)when calling the "configure" command. If they are not specified, they defaultto the values of CC and CFLAGS.Building on non-Unix systems----------------------------For a non-Unix system, read the comments in the file NON-UNIX-USE, though ifthe system supports the use of "configure" and "make" you may be able to buildPCRE in the same way as for Unix systems.PCRE has been compiled on Windows systems and on Macintoshes, but I don't knowthe details because I don't use those systems. It should be straightforward tobuild PCRE on any system that has a Standard C compiler, because it uses onlyStandard C functions.Testing PCRE------------To test PCRE on a Unix system, run the RunTest script that is created by theconfiguring process. (This can also be run by "make runtest", "make check", or"make test".) For other systems, see the instructions in NON-UNIX-USE.The script runs the pcretest test program (which is documented in its own manpage) on each of the testinput files (in the testdata directory) in turn,and compares the output with the contents of the corresponding testoutput file.A file called testtry is used to hold the main output from pcretest(testsavedregex is also used as a working file). To run pcretest on just one ofthe test files, give its number as an argument to RunTest, for example:  RunTest 2The first file can also be fed directly into the perltest script to check thatPerl gives the same results. The only difference you should see is in the firstfew lines, where the Perl version is given instead of the PCRE version.The second set of tests check pcre_fullinfo(), pcre_info(), pcre_study(),pcre_copy_substring(), pcre_get_substring(), pcre_get_substring_list(), errordetection, and run-time flags that are specific to PCRE, as well as the POSIXwrapper API. It also uses the debugging flag to check some of the internals ofpcre_compile().If you build PCRE with a locale setting that is not the standard C locale, thecharacter tables may be different (see next paragraph). In some cases, this maycause failures in the second set of tests. For example, in a locale where theisprint() function yields TRUE for characters in the range 128-255, the use of[:isascii:] inside a character class defines a different set of characters, andthis shows up in this test as a difference in the compiled code, which is beinglisted for checking. Where the comparison test output contains [\x00-\x7f] thetest will contain [\x00-\xff], and similarly in some other cases. This is not abug in PCRE.The third set of tests checks pcre_maketables(), the facility for building aset of character tables for a specific locale and using them instead of thedefault tables. The tests make use of the "fr_FR" (French) locale. Beforerunning the test, the script checks for the presence of this locale by runningthe "locale" command. If that command fails, or if it doesn't include "fr_FR"in the list of available locales, the third test cannot be run, and a commentis output to say why. If running this test produces instances of the error  ** Failed to set locale "fr_FR"in the comparison output, it means that locale is not available on your system,despite being listed by "locale". This does not mean that PCRE is broken.The fourth test checks the UTF-8 support. It is not run automatically unlessPCRE is built with UTF-8 support. To do this you must set --enable-utf8 whenrunning "configure". This file can be also fed directly to the perltest script,provided you are running Perl 5.8 or higher. (For Perl 5.6, a small patch,commented in the script, can be be used.)The fifth test checks error handling with UTF-8 encoding, and internal UTF-8features of PCRE that are not relevant to Perl.The sixth and final test checks the support for Unicode character properties.It it not run automatically unless PCRE is built with Unicode property support.To to this you must set --enable-unicode-properties when running "configure".Character tables----------------PCRE uses four tables for manipulating and identifying characters whose valuesare less than 256. The final argument of the pcre_compile() function is apointer to a block of memory containing the concatenated tables. A call topcre_maketables() can be used to generate a set of tables in the currentlocale. If the final argument for pcre_compile() is passed as NULL, a set ofdefault tables that is built into the binary is used.The source file called chartables.c contains the default set of tables. This isnot supplied in the distribution, but is built by the program dftables(compiled from dftables.c), which uses the ANSI C character handling functionssuch as isalnum(), isalpha(), isupper(), islower(), etc. to build the tablesources. This means that the default C locale which is set for your system willcontrol the contents of these default tables. You can change the default tablesby editing chartables.c and then re-building PCRE. If you do this, you shouldprobably also edit Makefile to ensure that the file doesn't ever getre-generated.The first two 256-byte tables provide lower casing and case flipping functions,respectively. The next table consists of three 32-byte bit maps which identifydigits, "word" characters, and white space, respectively. These are used whenbuilding 32-byte bit maps that represent character classes.The final 256-byte table has bits indicating various character types, asfollows:    1   white space character    2   letter    4   decimal digit    8   hexadecimal digit   16   alphanumeric or '_'  128   regular expression metacharacter or binary zeroYou should not alter the set of characters that contain the 128 bit, as thatwill cause PCRE to malfunction.Manifest--------The distribution should contain the following files:(A) The actual source files of the PCRE library functions and their    headers:  dftables.c            auxiliary program for building chartables.c  get.c                 )  maketables.c          )  study.c               ) source of the functions  pcre.c                )   in the library  pcreposix.c           )  printint.c            )  ucp.c                 )  ucp.h                 ) source for the code that is used for  ucpinternal.h         )   Unicode property handling  ucptable.c            )  ucptypetable.c        )  pcre.in               "source" for the header for the external API; pcre.h                          is built from this by "configure"  pcreposix.h           header for the external POSIX wrapper API  internal.h            header for internal use  config.in             template for config.h, which is built by configure(B) Auxiliary files:  AUTHORS               information about the author of PCRE  ChangeLog             log of changes to the code  INSTALL               generic installation instructions  LICENCE               conditions for the use of PCRE  COPYING               the same, using GNU's standard name  Makefile.in           template for Unix Makefile, which is built by configure  NEWS                  important changes in this release  NON-UNIX-USE          notes on building PCRE on non-Unix systems  README                this file  RunTest.in            template for a Unix shell script for running tests  config.guess          ) files used by libtool,  config.sub            )   used only when building a shared library  configure             a configuring shell script (built by autoconf)  configure.in          the autoconf input used to build configure  doc/Tech.Notes        notes on the encoding  doc/*.3               man page sources for the PCRE functions  doc/*.1               man page sources for pcregrep and pcretest  doc/html/*            HTML documentation  doc/pcre.txt          plain text version of the man pages  doc/pcretest.txt      plain text documentation of test program  doc/perltest.txt      plain text documentation of Perl test program  install-sh            a shell script for installing files  libpcre.pc.in         "source" for libpcre.pc for pkg-config  ltmain.sh             file used to build a libtool script  mkinstalldirs         script for making install directories  pcretest.c            comprehensive test program  pcredemo.c            simple demonstration of coding calls to PCRE  perltest              Perl test program  pcregrep.c            source of a grep utility that uses PCRE  pcre-config.in        source of script which retains PCRE information  testdata/testinput1   test data, compatible with Perl  testdata/testinput2   test data for error messages and non-Perl things  testdata/testinput3   test data for locale-specific tests  testdata/testinput4   test data for UTF-8 tests compatible with Perl  testdata/testinput5   test data for other UTF-8 tests  testdata/testinput6   test data for Unicode property support tests  testdata/testoutput1  test results corresponding to testinput1  testdata/testoutput2  test results corresponding to testinput2  testdata/testoutput3  test results corresponding to testinput3  testdata/testoutput4  test results corresponding to testinput4  testdata/testoutput5  test results corresponding to testinput5  testdata/testoutput6  test results corresponding to testinput6(C) Auxiliary files for Win32 DLL  dll.mk  libpcre.def  libpcreposix.def  pcre.def(D) Auxiliary file for VPASCAL  makevp.batPhilip Hazel <ph10@cam.ac.uk>September 2004

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -