获取libiec61850和如何编译iec61850库

1、若Ubuntu上没安装build-essential工具,则按如下命令安装build-essential:

sudo apt update

sudo apt install build-essential cmake git -y

2、用git从gitcode拉取libiec61850库源码,或从gitee上拉取/下载:

2.1 从gitcom拉取源码:

git clone https://gitcode.com/gh_mirrors/li/libiec61850.git

cd libiec61850

如我的Linux系统上,我将libiec61850拉取下来的代码放在了home/haoyj/src/iec61850目录下方:

或者

2.2 从gitee拉取源码:

登陆gitee,手机号+动态验证码

在gitee的搜索框中输入libiec61850,打开OPEN-YX/libiec61850这个URL

直接点击下载,或者通过git拉取源码:

若选择直接下载,下载下来后,解压zip即可得到源码。我这里用git clone命令拉取:

3、对libiec61850源码进行编译:

进入libiec61850的目录,创建build文件夹:

打开make文件夹下面的target_system.mk文件:

确认AMR_TOOLCHAIN_PREFIX=arm-linux-gnueabihf-

若是其他,则改为图上所示。

进入build目录,打开终端,输入cmake -DMAKE_BUILD_TYPE=Release .. 开始编译:

这条命令的作用是:配置项目的构建系统,并指定构建类型为"发布版"。

再输入 make -j$(nproc) 命令:

这条命令的作用是:利用你 CPU 的所有核心数,同时并行编译代码,从而最大化利用计算资源,缩短编译时间。极速编译代码。

最后一步,安装库文件,执行 sudo make install

这条命令的作用是:告诉 make 去执行 Makefile 中定义的 install 规则。通常这包括复制文件、设置权限等操作。

进入build/examples目录:打开iec61850_client_example1文件夹,可以看到,编译好的例程中有如下几个文件:CMakeFiles文件夹、cmake install.cmake、CTestTestfile.cmake、iec61850_client_example1、Makefile。其中iec61850_client_example1是应用程序(可执行文件)。通过./iec61850_client_example1 <localhost> <tcpPort> <localIp> <localTcpPort> 。。。参数,启动连接服务器。先得在linux系统中启动一个tcp server

相关推荐
2401_8734794043 分钟前
SOC告警日志中IP归属不明怎么办?部署IP离线库三步提升响应效率
网络·网络协议·tcp/ip
电子科技圈2 小时前
先进封装、芯粒架构和3D集成——先进异构集成亟需兼具标准化与定制化能力的互联及总线IP解决方案
tcp/ip·设计模式·架构·软件构建·代码规范·设计规范
德迅云安全-上官3 小时前
德迅云安全游戏盾与DDoS高防IP对比:差异、优势及选型指南
tcp/ip·游戏·ddos
GeekArch20 小时前
第24讲:Vibe模式代码风格控制——适配Keil/STM32工程规范
人工智能·stm32·单片机·嵌入式硬件·mcu·决策树·ai编程
treesforest1 天前
你以为只是一串数字?你的IP地址,正在悄悄暴露这些信息
网络·网络协议·tcp/ip·网络安全·ip归属地查询·ip风控
拾光Ծ1 天前
【Linux网络】网络通信实战:UDP & TCP Socket编程实现Echo Server
linux·网络·网络协议·tcp/ip·udp·线程池
派葛穆1 天前
s7-200smart-tcp/ip通讯
网络协议·tcp/ip
玩转4G物联网2 天前
FS800DTU 新品上线|免费使用 DMP 设备管理平台,支持远程批量配置 & OTA 升级
物联网·网络协议·tcp/ip·云平台·核心板·fs800dtu·iot管理平台
wuqingshun3141592 天前
说说TCP的3次握手?为什么需要三次握手?
服务器·网络协议·tcp/ip
无锡耐特森2 天前
解决网关数据异常EtherNetIP 转Modbus TCP专用动态监测
网络·网络协议·tcp/ip