Onigmo 技术文档
1. 安装指南
Onigmo 是一个正则表达式库,支持多种平台。以下是不同平台的安装步骤:
Unix 和 Cygwin 平台
- 执行
./autogen.sh(如果configure文件不存在)。 - 执行
./configure。 - 执行
make。 - 执行
make install。
- 进行测试:执行
make test。 - 卸载:执行
make uninstall。 - 配置检查:执行
onigmo-config --cflags、onigmo-config --libs、onigmo-config --prefix和onigmo-config --exec-prefix。
Windows 64/32位平台(Visual C++)
执行 build_nmake.cmd。build_x64 或 build_x86 将用作工作/输出目录。
-
onigmo_s.lib:静态链接库。 -
onigmo.lib:动态链接库的导入库。 -
onigmo.dll:动态链接库。 -
测试(ASCII/Shift_JIS/EUC-JP/Unicode):执行
build_nmake.cmd test。需要与 Onigmo 同位数的 Python 来运行测试。
Windows 64/32位平台(MinGW)
执行 mingw32-make -f win32/Makefile.mingw。build_x86-64、build_i686 等将用作工作/输出目录。
-
libonigmo.a:静态链接库。 -
libonigmo.dll.a:动态链接库的导入库。 -
onigmo.dll:动态链接库。 -
测试(ASCII/Shift_JIS/EUC-JP/Unicode):执行
mingw32-make -f win32/Makefile.mingw test。需要与 Onigmo 同位数的 Python 来运行测试。 -
如果在 MSYS2 上使用 MinGW,也可以像 Unix 一样使用
./configure和make。在这种情况下,DLL 名称将包含 API 版本号。例如:libonigmo-6.dll。
2. 项目使用说明
要使用 Onigmo,需要在程序中包含 onigmo.h 头文件。有关 Onigmo API 的详细信息,请参阅 doc/API。
如果希望在 onigmo.h 中禁用 UChar 类型的定义(等于 unsigned char),请定义 ONIG_ESCAPE_UCHAR_COLLISION,然后包含 onigmo.h。
如果希望在 onigmo.h 中禁用 regex_t 类型的定义,请定义 ONIG_ESCAPE_REGEX_T_COLLISION,然后包含 onigmo.h。
在 Unix 或 Cygwin 中的编译/链接命令行示例(假设前缀为 /usr/local):
cc sample.c -L/usr/local/lib -lonigmo
如果希望在 Win32 上使用静态链接库(onigmo_s.lib),请在 C 编译器中添加 -DONIG_EXTERN=extern 选项。
3. 项目 API 使用文档
Onigmo 的 API 文档位于 doc/API 目录中。有关如何使用这些 API 的详细信息,请参考该文档。
4. 项目安装方式
Onigmo 的安装方式已在“安装指南”部分详细介绍,根据不同的操作系统平台,安装方式略有不同。请参照相应的步骤进行安装。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0204- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00