编译和交叉编译open62541(开源OPC-UA库 C语言)

初级代码游戏的专栏介绍与文章目录-CSDN博客

我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。

这些代码大部分以Linux为目标但部分代码是纯C++的,可以在任何平台上使用。


目录

open62541是什么

下载

Ubuntu编译

交叉编译arm64

Windows编译


open62541是什么

        是开源的OPC-UA库,用C语言编写。

下载

        搜。

Ubuntu编译

        我用的是open62541-1.3.5.zip,在ubuntu上解压,进入解压后的目录。

        编译使用cmake 和ccmake,如果还没有安装需要根据提示安装,我用的是:

sudo apt  install cmake
sudo apt  install cmake-curses-gui

        按照cmake的习惯,先要这样:

mkdir build
cd build
cmake ..

        这样就生成了默认的编译配置。然后用ccmake来修改配置:

ccmake ..

        这是个字符窗口程序,可以用光标操作。一般我们喜欢生成一对h和c文件,这样比较简单,这个由UA_ENABLE_AMALGAMATION控制,光标移动过去,敲一下回车。(讲真,字符窗口真low啊,我折腾过curses库,想做得漂亮太难了)

        然后Press [c] to configure,再Press [g] to generate and exit(前面那个敲了才会出现这个)。

        这就算改了配置了,然后可以编译:

cmake ..
make
sudo make install

        编译并且安装了。

        生成文件open62541.c和open62541.h(位于build目录下,也就是当前位置,生成的.a则在bin目录下)。

交叉编译arm64

        我用的交叉编译环境不需要做任何额外设置,按照上面的操作直接生成了arm64的库(由于编译过程没有命令回显,内心很忐忑),然后链接到程序,拿到设备上正确运行了。

        厉害。

Windows编译

        (这段是以前记录的,本次并未重新验证,不过看起来应该没问题)
先安装下列软件:
Cmake
Python

安装后重启系统

在cmd进入源码解压缩后的目录
mkdir build
cd build
cmake .. -DUA_ENABLE_AMALGAMATION=ON (此参数控制生成单一文件,一对.h和.c)
不报错就表示成功,会在build目录下看到Visual Studio的工作区和项目文件
用Visual Studio打开工作区文件,编译生成全部
build目录下生成open62541.c open62541.h
build\bin下面与编译类型对应的目录下可以找到open62541.lib
 


(这里是结束)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

初级代码游戏

知识究竟是有价还是无价

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值