UA SDK编译错误解决:/usr/bin/ld.gold:致命错误: uaclientc:输入/输出错误

在虚拟机ubuntu系统中UA SDK编译过程中,运行buildExample.sh编译客户端时出现的报错: 

/usr/bin/ld.gold:致命错误: uaclientc:输入/输出错误

报错截图: 

UA SDK编译错误解决:/usr/bin/ld.gold:致命错误: uaclientc:输入/输出错误_第1张图片

经查询,该报错为ld.gold报错,提示输入输出错误,造成该错误的原因可能有
1.目标文件不在本地,在网盘或U盘上,因网络或权限导致编译运行时找不到目录,进而报错;
2.系统盘存储空间不足;
3.ld.gold或其他文件毁坏。
经核对,报该错误是因为SDK所在文件夹不在本地目录,将SDK转移至主目录,即可正确编译。


此外,SDK运行需要对应版本openssl库,当系统目前的openssl库与目标平台/SDK版本不一致时,也会在编译SDK的过程中报错:

usr/bin/ld.gold: fatal error: /usr/local/lib/libcrypto.so: unsupported ELF machine number 40

该错误解决方案:
下载1.1.1及以上版本的openssl压缩文件,解压后在本地使用基本的编译器编译,完成后链接生成的库,即可正确运行SDK编译文件,或直接使用sudo apt-get install openssl=1.1.1安装openssl。

你可能感兴趣的:(OPC,UA,linux,运维,服务器)