【已解决】链接libtuyaos.a后库函数未定义
如下图,MK8010C平台上,我成功链接了libtuyaos.a,头文件路径也添加ok ,但是提示函数未定义,我对比其他平台的libtuyaos.a,发现这个libtuyaos.a大小不一致。
请问是否libtuyaos.a不是用对应的交叉工具链生成的?
明明链接了,却提示函数未定义。请问遇到这种类似问题吗
如下图,MK8010C平台上,我成功链接了libtuyaos.a,头文件路径也添加ok ,但是提示函数未定义,我对比其他平台的libtuyaos.a,发现这个libtuyaos.a大小不一致。
请问是否libtuyaos.a不是用对应的交叉工具链生成的?
明明链接了,却提示函数未定义。请问遇到这种类似问题吗
截图如附件
截图附件好像传不上去,我压缩一下
你好,麻烦检查一下有没有把sdk相关的头文件目录引用到编译环境,如附件图中:
另外,再确认下tuya_device.c中有没有引用#include "tal_queue.h"。
除了这个符号,还有其他的么?和链接顺序有没有关系?
工具链:
符号所在.o文件:
有的,连接库的路径也是对的,具体打印和库的链接顺序见附件截图,麻烦帮忙看看有啥问题
tal_system不需要额外加,他在tuyaos.a里已经包含了。需要看你下你链接可执行程序的时候,你编译出来的.o和这个tuyaos.a的顺序。
你好,麻烦再提供一下整个编译过程的所有信息
愚者千虑必有一得 2023年 Sep 14日 11:12tal_system不需要额外加,他在tuyaos.a里已经包含了。需要看你下你链接可执行程序的时候,你编译出来的.o和这个tuyaos.a的顺序。
您好,附件使我们的编译log,能帮忙看看是否有问题吗?我们现在是通过涂鸦os的编译环境,能编译生成我们的程序bin,然后我们将在我们原厂入口函数中执行tuya_app_main函数。为了能tuya_app_main执行成功,我们去链接libtuyaos.a。另外适配层tuyaos_adapter的c文件也放在我们自己的工程里参加编译。后续就报了libtuyaos.a里的函数未定义问题。