获取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

相关推荐
笨笨饿10 小时前
#135_代码中的类型重定义艺术:从基础封装到函数类型设计
开发语言·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库
Experience-摆渡13 小时前
自建 IP 轮换方案实战:健康探测 + 熔断剔除 + 粘性会话
网络·网络协议·tcp/ip
csdn_aspnet15 小时前
Modbus RTU 与 Modbus TCP:它们有什么区别?
网络·tcp/ip·tcp·modbus·rtu
Fxkj88820 小时前
传统企业布局新媒体:自行摸索与IP陪跑模式深度对比
人工智能·网络协议·tcp/ip·媒体
2401_873479401 天前
IP地址查询工具技术选型:从四类方案到生产部署的完整评估框架
tcp/ip·ip
电子科技圈1 天前
从工厂直达全球市场:emnify为联网设备制造商推出免费SGP.32引导网络接入的OEM计划
嵌入式硬件·mcu·物联网·智能硬件·iot·交通物流
rockingdingo1 天前
Codex Claude 智能体做3D/潮玩/IP设计——装上Craftsman Agent工匠智能体Skills 游泳男孩IP案例分享
网络协议·tcp/ip·3d
牛油果子哥q2 天前
C++ Socket精讲:TCP/UDP套接字、客户端服务端实现、字节序、粘包拆包、简单HTTP服务、网络踩坑与面试全解
网络·c++·tcp/ip
A hao2 天前
户外LED广告牌需要什么防护等级IP级别?
大数据·网络·图像处理·人工智能·网络协议·tcp/ip·广告
Messy create2 天前
【BMS-三级架构】
单片机·mcu·架构·能源