初级代码游戏的专栏介绍与文章目录-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
 


(这里是结束)

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐