README file for PCRE2 (Perl-compatible regular expression library)
------------------------------------------------------------------
PCRE2 is a re-working of the original PCRE1 library to provide an entirely new
API. Since its initial release in 2015, there has been further development of
the code and it now differs from PCRE1 in more than just the API. There are new
features, and the internals have been improved. The original PCRE1 library is
now obsolete and no longer maintained. The latest release of PCRE2 is available
in .tar.gz, tar.bz2, or .zip form from this GitHub repository:
https://github.com/PCRE2Project/pcre2/releases
There is a mailing list for discussion about the development of PCRE2 at
pcre2-dev@googlegroups.com. You can subscribe by sending an email to
pcre2-dev+subscribe@googlegroups.com.
You can access the archives and also subscribe or manage your subscription
here:
https://groups.google.com/g/pcre2-dev
Please read the NEWS file if you are upgrading from a previous release. The
contents of this README file are:
The PCRE2 APIs
Documentation for PCRE2
Contributions by users of PCRE2
Building PCRE2 on non-Unix-like systems
Building PCRE2 without using autotools
Building PCRE2 using autotools
Retrieving configuration information
Shared libraries
Cross-compiling using autotools
Making new tarballs
Testing PCRE2
Character tables
File manifest
The PCRE2 APIs
--------------
PCRE2 is written in C, and it has its own API. There are three sets of
functions, one for the 8-bit library, which processes strings of bytes, one for
the 16-bit library, which processes strings of 16-bit values, and one for the
32-bit library, which processes strings of 32-bit values. Unlike PCRE1, there
are no C++ wrappers.
The distribution does contain a set of C wrapper functions for the 8-bit
library that are based on the POSIX regular expression API (see the pcre2posix
man page). These are built into a library called libpcre2-posix. Note that this
just provides a POSIX calling interface to PCRE2; the regular expressions
themselves still follow Perl syntax and semantics. The POSIX API is restricted,
and does not give full access to all of PCRE2's facilities.
The header file for the POSIX-style functions is called pcre2posix.h. The
official POSIX name is regex.h, but I did not want to risk possible problems
with existing files of that name by distributing it that way. To use PCRE2 with
an existing program that uses the POSIX API, pcre2posix.h will have to be
renamed or pointed at by a link (or the program modified, of course). See the
pcre2posix documentation for more details.
Documentation for PCRE2
-----------------------
If you install PCRE2 in the normal way on a Unix-like system, you will end up
with a set of man pages whose names all start with "pcre2". The one that is
just called "pcre2" lists all the others. In addition to these man pages, the
PCRE2 documentation is supplied in two other forms:
1. There are files called doc/pcre2.txt, doc/pcre2grep.txt, and
doc/pcre2test.txt in the source distribution. The first of these is a
concatenation of the text forms of all the section 3 man pages except the
listing of pcre2demo.c and those that summarize individual functions. The
other two are the text forms of the section 1 man pages for the pcre2grep
and pcre2test commands. These text forms are provided for ease of scanning
with text editors or similar tools. They are installed in
<prefix>/share/doc/pcre2, where <prefix> is the installation prefix
(defaulting to /usr/local).
2. A set of files containing all the documentation in HTML form, hyperlinked
in various ways, and rooted in a file called index.html, is distributed in
doc/html and installed in <prefix>/share/doc/pcre2/html.
Building PCRE2 on non-Unix-like systems
---------------------------------------
For a non-Unix-like system, please read the file NON-AUTOTOOLS-BUILD, though if
your system supports the use of "configure" and "make" you may be able to build
PCRE2 using autotools in the same way as for many Unix-like systems.
PCRE2 can also be configured using CMake, which can be run in various ways
(command line, GUI, etc). This creates Makefiles, solution files, etc. The file
NON-AUTOTOOLS-BUILD has information about CMake.
PCRE2 has been compiled on many different operating systems. It should be
straightforward to build PCRE2 on any system that has a Standard C compiler and
library, because it uses only Standard C functions.
Building PCRE2 without using autotools
--------------------------------------
The use of autotools (in particular, libtool) is problematic in some
environments, even some that are Unix or Unix-like. See the NON-AUTOTOOLS-BUILD
file for ways of building PCRE2 without using autotools.
Building PCRE2 using autotools
------------------------------
The following instructions assume the use of the widely used "configure; make;
make install" (autotools) process.
If you have downloaded and unpacked a PCRE2 release tarball, run the
"configure" command from the PCRE2 directory, with your current directory set
to the directory where you want the files to be created. This command is a
standard GNU "autoconf" configuration script, for which generic instructions
are supplied in the file INSTALL.
The files in the GitHub repository do not contain "configure". If you have
downloaded the PCRE2 source files from GitHub, before you can run "configure"
you must run the shell script called autogen.sh. This runs a number of
autotools to create a "configure" script (you must of course have the autotools
commands installed in order to do this).
Most commonly, people build PCRE2 within its own distribution directory, and in
this case, on many systems, just running "./configure" is sufficient. However,
the usual methods of changing standard defaults are available. For example:
CFLAGS='-O2 -Wall' ./configure --prefix=/opt/local
This command specifies that the C compiler should be run with the flags '-O2
-Wall' instead of the default, and that "make install" should install PCRE2
under /opt/local instead of the default /usr/local.
If you want to build in a different directory, just run "configure" with that
directory as current. For example, suppose you have unpacked the PCRE2 source
into /source/pcre2/pcre2-xxx, but you want to build it in
/build/pcre2/pcre2-xxx:
cd /build/pcre2/pcre2-xxx
/source/pcre2/pcre2-xxx/configure
PCRE2 is written in C and is normally compiled as a C library. However, it is
possible to build it as a C++ library, though the provided building apparatus
does not have any features to support this.
There are some optional features that can be included or omitted from the PCRE2
library. They are also documented in the pcre2build man page.
. By default, both shared and static libraries are built. You can change this
by adding one of these options to the "configure" command:
--disable-shared
--disable-static
(See also "Shared libraries on Unix-like systems" below.)
. By default, only the 8-bit library is built. If you add --enable-pcre2-16 to
the "configure" command, the 16-bit library is also built. If you add
--enable-pcre2-32 to the "configure" command, the 32-bit library is also
built. If you want only the 16-bit or 32-bit library, use --disable-pcre2-8
to disable building the 8-bit library.
. If you want to include support for just-in-time (JIT) compiling, which can
give large performance improvements on certain platforms, add --enable-jit to
the "configure" command. This support is available only for certain hardware
architectures. If you try to enable it on an unsupported architecture, there
will be a compile time error. If in doubt, use --enable-jit=auto, which
enables JIT only if the current hardware is supported.
. If you are enabling JIT under SELinux environment you may also want to add
--enable-jit-sealloc, which enables the use of
没有合适的资源?快使用搜索试试~ 我知道了~
glib-20230609.tar.gz
需积分: 5 0 下载量 156 浏览量
2023-06-09
23:00:48
上传
评论
收藏 135.38MB GZ 举报
温馨提示
共2000个文件
c:1133个
h:543个
xml:134个
glib_20230609.tar.gz,glib 仓库,当前最新版本v2.77,包含 git 仓库,子仓库,可以直接用于编译,如交叉编译
资源推荐
资源详情
资源评论
收起资源包目录
glib-20230609.tar.gz (2000个子文件)
pcre2_jit_compile.c 436KB
pcre2_compile.c 345KB
pcre2_ucd.c 324KB
gfile.c 320KB
pcre2test.c 305KB
gdbusconnection.c 273KB
pcre2_match.c 223KB
vasnprintf.c 220KB
gwin32appinfo.c 199KB
gsocket.c 190KB
gmain.c 186KB
gvariant.c 182KB
gvariant.c 182KB
dlmalloc.c 179KB
gobject.c 162KB
gdesktopappinfo.c 156KB
gtype.c 151KB
regex.c 146KB
gtestutils.c 143KB
pcre2_dfa_match.c 138KB
gsignal.c 133KB
file.c 133KB
pcre2grep.c 128KB
gkeyfile.c 123KB
sljitNativeMIPS_common.c 122KB
gregex.c 119KB
gdbusmessage.c 114KB
gbookmarkfile.c 112KB
gdbusproxy.c 110KB
gdatetime.c 109KB
sljitNativeARM_32.c 109KB
sljitNativeS390X.c 109KB
gapplication.c 107KB
gmessages.c 106KB
gsettings.c 106KB
pcre2_jit_test.c 106KB
gdbus-test-codegen.c 104KB
gspawn.c 103KB
test-callback.c 101KB
gutils.c 101KB
gdatetime.c 101KB
testing.c 100KB
array-test.c 100KB
sljitNativeARM_T2_32.c 97KB
gsettings.c 97KB
goutputstream.c 95KB
sljitLir.c 95KB
fileutils.c 94KB
sljitNativeX86_common.c 94KB
gmarshal-internal.c 93KB
gstrfuncs.c 93KB
glocalfileinfo.c 92KB
gmarshal.c 90KB
garray.c 90KB
strfuncs.c 90KB
gmarkup.c 90KB
guri.c 89KB
sljitNativePPC_common.c 88KB
gwin32registrykey.c 88KB
sljitNativeRISCV_common.c 87KB
gfileutils.c 85KB
docs.c 84KB
gunixmounts.c 83KB
ghash.c 83KB
gfileinfo.c 82KB
gdbusprivate.c 81KB
unicode.c 80KB
giochannel.c 79KB
glocalfile.c 79KB
goption.c 78KB
checksum.c 78KB
gdbus-tool.c 78KB
deflate.c 77KB
gsocketclient.c 76KB
gparamspecs.c 76KB
gvariant-parser.c 76KB
uri.c 75KB
option-context.c 74KB
gdbus-peer.c 73KB
sljitNativeARM_64.c 73KB
task.c 73KB
gtask.c 73KB
gdbusobjectmanagerclient.c 73KB
gregistrysettingsbackend.c 73KB
gdbus-export.c 72KB
gdate.c 71KB
gtimezone.c 71KB
glib-compile-schemas.c 70KB
unzip.c 69KB
mainloop.c 68KB
gdbusintrospection.c 66KB
gsubprocess.c 66KB
socket.c 65KB
signals.c 65KB
gclosure.c 64KB
zip.c 64KB
gconvert.c 64KB
desktop-app-info.c 63KB
win_iconv.c 62KB
param.c 60KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
张世争
- 粉丝: 3530
- 资源: 93
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功