open62541 V1.5.4版对C++ Builder支持的bug

最新版open62541 V1.5.4编译生成的open62541.dll,使用 implib -a open62541.lib open62541.dll 可以给C++ Builder 13使用,如果不用open62541.lib,直接使用open62541.c会报一堆的Error: Unresolved externalreferenced from,如图:

根本原因是open62541对c++ Builder的支持不够,主要在open62541.h 259行,C++Builder clang-enhanced 编译open62541.c, 编译命令是C99,不是C11,对static __thread处理不到位,需修改如下:

#if defined(CODEGEARC) defined(BORLANDC)

undef UA_STATIC_THREAD_LOCAL

define UA_STATIC_THREAD_LOCAL /*c++Builder Win32 cannot link function-local static __thread arrays */

#endif

完整的程序包见csdn下载

相关推荐
希和20278 小时前
考研英语阅读词汇笔记|城市野径、抄近道步道(非正式小路)
笔记·考研
一个人旅程~11 小时前
关于imac27inch因改短用户名导致混合硬盘和系统崩溃的问题分析与故障解决
经验分享·笔记·macos·新浪微博
心祭丫丫12 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习
派大猩猩_14 小时前
Obsidian 笔记怎么同步多端:Nutstore Sync 大笔记库同步测评
笔记·obsidian·obsidian插件·obsidian同步
叼烟扛炮18 小时前
Linux 学习笔记(五十):网络层——IP 协议、子网划分与 NAT 魔法
linux·笔记·学习
叼烟扛炮18 小时前
Linux 学习笔记(六十):单线程的逆袭——epoll 高并发服务器实战
linux·服务器·网络·笔记·学习·算法
Rabitebla19 小时前
【Linux操作系统】进程篇(十一):进程程序替换——从底层原理到 exec 函数族
linux·服务器·c++·笔记·学习·算法
叼烟扛炮20 小时前
[LangChain] 学习笔记(03):打破失忆症——对话机制与上下文管理
java·前端·javascript·笔记·学习·langchain
景煜拾年20 小时前
InnoAI SQL 助手
运维·数据库·笔记·sql
旖旎夜光20 小时前
【C++ 基础入门】类和对象(下):初始化列表、static 成员、友元与内部类
c++·笔记·学习