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 的安装方式已在“安装指南”部分详细介绍,根据不同的操作系统平台,安装方式略有不同。请参照相应的步骤进行安装。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0132
let_datasetLET数据集 基于全尺寸人形机器人 Kuavo 4 Pro 采集,涵盖多场景、多类型操作的真实世界多任务数据。面向机器人操作、移动与交互任务,支持真实环境下的可扩展机器人学习00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
AgentCPM-ReportAgentCPM-Report是由THUNLP、中国人民大学RUCBM和ModelBest联合开发的开源大语言模型智能体。它基于MiniCPM4.1 80亿参数基座模型构建,接收用户指令作为输入,可自主生成长篇报告。Python00