mqtt连接时报错-8
mqtt连接时报错,错误码是-8
背景
使用mqtt-c库,创建mqtt连接的时候报错,错误码是-8
问题排查
根据头文件来看
1 | #define MQTTASYNC_BAD_STRUCTURE -8 |
错误码是-8的时候,表示创建连接的mqtt的结构体是错误的
经过排查之后,发现,是mqtt的库版本不对。
因为系统里同时安装了两个版本的mqtt的库,一个是最新的,一个是原本用的旧版本的,在编译的时候,用了最新的mqtt的版本编译。
但是把程序给别人的时候,别人用的是旧版本的mqtt的动态库,所以当程序执行的时候,当创建连接时,会报错-8
总结
在多个人使用同一个第三方库的时候,一定一定要注意,版本的问题;要保证大家使用的是统一的版本号编译的第三方动态库!
版本差异导致报错,这种问题真的很坑……