/[pcre]/code/trunk/NON-UNIX-USE
ViewVC logotype

Diff of /code/trunk/NON-UNIX-USE

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 237 by ph10, Tue Sep 11 13:12:13 2007 UTC revision 260 by ph10, Thu Sep 20 10:19:16 2007 UTC
# Line 9  This document contains the following sec Line 9  This document contains the following sec
9    Building for virtual Pascal    Building for virtual Pascal
10    Stack size in Windows environments    Stack size in Windows environments
11    Comments about Win32 builds    Comments about Win32 builds
12      Building PCRE with CMake
13    Building under Windows with BCC5.5    Building under Windows with BCC5.5
14    Building PCRE on OpenVMS    Building PCRE on OpenVMS
15    
# Line 30  library consists entirely of code writte Line 31  library consists entirely of code writte
31  successfully on any system that has a Standard C compiler and library. The C++  successfully on any system that has a Standard C compiler and library. The C++
32  wrapper functions are a separate issue (see below).  wrapper functions are a separate issue (see below).
33    
34  The PCRE distribution contains some experimental support for "cmake", but this  The PCRE distribution includes support for CMake. This support is relatively
35  is incomplete and not documented. However if you are a "cmake" user you might  new, but has already been used successfully to build PCRE in multiple build
36  like to try building with "cmake".  environments on Windows. There are some instructions in the section entitled
37    "Building PCRE with CMake" below.
38    
39    
40  GENERIC INSTRUCTIONS FOR THE PCRE C LIBRARY  GENERIC INSTRUCTIONS FOR THE PCRE C LIBRARY
# Line 47  The following are generic comments about Line 49  The following are generic comments about
49       in the sources.       in the sources.
50    
51       An alternative approach is not to edit config.h, but to use -D on the       An alternative approach is not to edit config.h, but to use -D on the
52       compiler command line to make any changes that you need to the       compiler command line to make any changes that you need to the
53       configuration options. In this case -DHAVE_CONFIG_H must not be set.       configuration options. In this case -DHAVE_CONFIG_H must not be set.
54    
55       NOTE: There have been occasions when the way in which certain parameters       NOTE: There have been occasions when the way in which certain parameters
# Line 62  The following are generic comments about Line 64  The following are generic comments about
64         Copy or rename file pcre_chartables.c.dist as pcre_chartables.c.         Copy or rename file pcre_chartables.c.dist as pcre_chartables.c.
65    
66       OR:       OR:
67         Compile dftables.c as a stand-alone program (using -DHAVE_CONFIG_H if         Compile dftables.c as a stand-alone program (using -DHAVE_CONFIG_H if
68         you have set up config.h), and then run it with the single argument         you have set up config.h), and then run it with the single argument
69         "pcre_chartables.c". This generates a set of standard character tables         "pcre_chartables.c". This generates a set of standard character tables
70         and writes them to that file. The tables are generated using the default         and writes them to that file. The tables are generated using the default
# Line 87  The following are generic comments about Line 89  The following are generic comments about
89         pcre_printint.src         pcre_printint.src
90    
91   (6) Compile the following source files, setting -DHAVE_CONFIG_H as a compiler   (6) Compile the following source files, setting -DHAVE_CONFIG_H as a compiler
92       option if you have set up config.h with your configuration, or else use       option if you have set up config.h with your configuration, or else use
93       other -D settings to change the configuration as required.       other -D settings to change the configuration as required.
94    
95         pcre_chartables.c         pcre_chartables.c
# Line 132  The following are generic comments about Line 134  The following are generic comments about
134       that the output matches the corresponding testoutput files. Note that the       that the output matches the corresponding testoutput files. Note that the
135       supplied files are in Unix format, with just LF characters as line       supplied files are in Unix format, with just LF characters as line
136       terminators. You may need to edit them to change this if your system uses       terminators. You may need to edit them to change this if your system uses
137       a different convention.       a different convention. If you are using Windows, you probably should use
138         the wintestinput3 file instead of testinput3 (and the corresponding output
139         file). This is a locale test; wintestinput3 sets the locale to "french"
140         rather than "fr_FR", and there some minor output differences.
141    
142  (11) If you want to use the pcregrep command, compile and link pcregrep.c; it  (11) If you want to use the pcregrep command, compile and link pcregrep.c; it
143       uses only the basic PCRE library (it does not need the pcreposix library).       uses only the basic PCRE library (it does not need the pcreposix library).
# Line 164  fail because of this. Normally, running Line 169  fail because of this. Normally, running
169  have been cases where the test program has just died silently. See your linker  have been cases where the test program has just died silently. See your linker
170  documentation for how to increase stack size if you experience problems. The  documentation for how to increase stack size if you experience problems. The
171  Linux default of 8Mb is a reasonable choice for the stack, though even that can  Linux default of 8Mb is a reasonable choice for the stack, though even that can
172  be too small for some pattern/subject combinations. There is more about stack  be too small for some pattern/subject combinations.
 usage in the "pcrestack" documentation.  
173    
174    PCRE has a compile configuration option to disable the use of stack for
175    recursion so that heap is used instead. However, pattern matching is
176    significantly slower when this is done. There is more about stack usage in the
177    "pcrestack" documentation.
178    
179  COMMENTS ABOUT WIN32 BUILDS  
180    COMMENTS ABOUT WIN32 BUILDS (see also "BUILDING PCRE WITH CMAKE" below)
181    
182  There are two ways of building PCRE using the "configure, make, make install"  There are two ways of building PCRE using the "configure, make, make install"
183  paradigm on Windows systems: using MinGW or using Cygwin. These are not at all  paradigm on Windows systems: using MinGW or using Cygwin. These are not at all
# Line 243  terminators in order to get some of the Line 252  terminators in order to get some of the
252  things in this area in future.  things in this area in future.
253    
254    
255    BUILDING PCRE WITH CMAKE
256    
257    CMake is an alternative build facility that can be used instead of the
258    traditional Unix "configure". CMake version 2.4.7 supports Borland makefiles,
259    MinGW makefiles, MSYS makefiles, NMake makefiles, UNIX makefiles, Visual Studio
260    6, Visual Studio 7, Visual Studio 8, and Watcom W8. The following instructions
261    were contributed by a PCRE user.
262    
263    1. Download CMake 2.4.7 or above from http://www.cmake.org/, install and ensure
264       that cmake\bin is on your path.
265    
266    2. Unzip (retaining folder structure) the PCRE source tree into a source
267       directory such as C:\pcre.
268    
269    3. Create a new, empty build directory: C:\pcre\build\
270    
271    4. Run CMakeSetup from the Shell envirornment of your build tool, e.g., Msys
272       for Msys/MinGW or Visual Studio Command Prompt for VC/VC++
273    
274    5. Enter C:\pcre\pcre-xx and C:\pcre\build for the source and build
275       directories, respectively
276    
277    6. Hit the "Configure" button.
278    
279    7. Select the particular IDE / build tool that you are using (Visual Studio,
280       MSYS makefiles, MinGW makefiles, etc.)
281    
282    8. The GUI will then list several configuration options. This is where you can
283       enable UTF-8 support, etc.
284    
285    9. Hit "Configure" again. The adjacent "OK" button should now be active.
286    
287    10. Hit "OK".
288    
289    11. The build directory should now contain a usable build system, be it a
290        solution file for Visual Studio, makefiles for MinGW, etc.
291    
292    Testing with RunTest.bat
293    
294    1. Copy RunTest.bat into the directory where pcretest.exe has been created.
295    
296    2. Edit RunTest.bat and insert a line that indentifies the relative location of
297       the pcre source, e.g.:
298    
299       set srcdir=..\pcre-7.4-RC3
300    
301    3. Run RunTest.bat from a command shell environment. Test outputs will
302       automatically be compared to expected results, and discrepancies will
303       identified in the console output.
304    
305    4. To test pcrecpp, run pcrecpp_unittest.exe, pcre_stringpiece_unittest.exe and
306       pcre_scanner_unittest.exe.
307    
308    
309  BUILDING UNDER WINDOWS WITH BCC5.5  BUILDING UNDER WINDOWS WITH BCC5.5
310    
311  Michael Roy sent these comments about building PCRE under Windows with BCC5.5:  Michael Roy sent these comments about building PCRE under Windows with BCC5.5:
# Line 321  $!   Locale could not be set to fr Line 384  $!   Locale could not be set to fr
384  $!  $!
385  =========================  =========================
386    
387  Last Updated: 11 September 2007  Last Updated: 21 September 2007
388  ****  ****

Legend:
Removed from v.237  
changed lines
  Added in v.260

  ViewVC Help
Powered by ViewVC 1.1.5