littlebot
Published on 2025-04-11 / 0 Visits
0

【源码】基于C++的AML数据转换库

项目简介

本项目是一个基于C++的库,其主要目的是将基于键值对的原始数据转换为AutomationML(AML)标准格式。此库具备AML数据的序列化和反序列化功能,同时还提供了与微服务集成的指南。

项目的主要特性和功能

  • 数据转换:可把原始数据转换为XML格式的AML数据。
  • 序列化与反序列化:利用protobuf对AML数据进行序列化和反序列化操作。
  • 多平台支持:支持x86_64、x86、armhf和arm64架构的构建。
  • 微服务集成:提供与微服务集成的指南,支持动态和静态链接。

安装使用步骤

前提条件

  • SCons:版本需为2.3.0或以上。
  • Protobuf:版本为3.4.0,可通过构建脚本自动安装,也能手动安装。

构建步骤

  1. 进入项目目录:~/datamodel-aml-cpp/
  2. 运行构建脚本: ./build.sh <options> # 为x86_64架构构建 ./build_32.sh <options> # 为x86架构构建 ./build_arm.sh <options> # 为armhf架构构建(适用于Raspberry Pi) ./build_arm64.sh <options> # 为arm64架构构建(适用于Raspberry Pi) 注意
  3. 首次构建时,需将install_prerequisites选项设为true(如:./build.sh --install_prerequisites=true),以便安装所需的库。
  4. 构建脚本需要sudo权限来安装库,未来可能会移除这一需求。

运行示例

  1. 进入示例目录:~/datamodel-aml-cpp/out/linux/{ARCH}/{MODE}/samples/
  2. 设置环境变量:export LD_LIBRARY_PATH=../
  3. 运行示例程序: ./sample

微服务集成指南

  1. 微服务需要链接以下库:
  2. 动态链接:链接aml.so
  3. 静态链接:链接aml.a
  4. 参考AML库API文档:docs/docs/html/index.html

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】