T113-S3芯片,XR829wifi蓝牙模块如何在QT中进行蓝牙开发
-
配置了tinaSDK的环境,根据《Tina_Linux_蓝牙_开发指南.pdf》这篇文档提供的代码位置,找到了so文件,并引入。会报错,请教一下如何正确使用这个so文件? -
【已解决】
步骤一
先将btmanager整个复制到项目中
步骤二
在项目中新建out_lib和out2_lib目录
然后将这段复制到pro文件里最下边(截图的不完整,用下面的代码)LIB_PATH = $$PWD/btmanager/out_lib LIB_PATH2 = $$PWD/btmanager/out2_lib unix:!macx: LIBS += -L$$LIB_PATH2 -lpcre -lffi ## 在 Unix 系统(非 macOS)下添加库 unix:!macx { LIBS += -L$$LIB_PATH -lbluetooth -lglib-2.0 -lsbc -ljson-c -lz -lgmodule-2.0 -lgio-2.0 -lgobject-2.0 -lasound -lbtmg -ldl -lm -lresolv LIBS += -lshared-mainloop -lbluetooth-internal -lshared-glib } INCLUDEPATH += $$PWD/btmanager/include DEPENDPATH += $$PWD/btmanager/include
步骤三
在你的sdk下找到类似这个路径
Tina-SDK/out/t113-bingpi_m2/staging_dir/target/usr/lib
下的所有文件复制到项目下的out_lib中,再找到类似这个路径Tina-SDK/out/t113-bingpi_m2/staging_dir/target/rootfs/lib
下的所有文件复制到项目下的out2_lib中(out文件夹是要进行一次make && moob && pack后编译生成所产生的)
编译执行,就不会缺少依赖了##总结
其实我这个是笨方法,就是缺少啥依赖就将生成的so文件放进去,实际上用到的就是这些-lbluetooth -lglib-2.0 -lsbc -ljson-c -lz -lgmodule-2.0 -lgio-2.0 -lgobject-2.0 -lasound -lbtmg -ldl -lm -lresolv -lshared-mainloop -lbluetooth-internal -lshared-glib
,这些库的意思就是去掉lib和so前缀和后缀的,比如-lbluetooth
就是libbluetooth.so
、-lglib-2.0
就是libglib-2.0.so
。这里是参考btmanager里面demo里的Makefile文件写的,-lbtmg
引入的顺序必须与写的顺序一致,不然会提示缺少依赖,需要写好-lbtmg
所需要的依赖后再引入。
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号