error: Undefined reference for function definition in ble_gatts.c

⚠️
你好。。谢谢你来参加论坛。令人兴奋的消息!我们现在正在移动到我们的新论坛平台,将提供更好的功能,并包含在主对话网站的过程。所有帖子和账号都已迁移。我们现在只接受新论坛上的流量-请在//www.xmece.com/support. 我们将在未来几天内修复bug/优化搜索和标记。
10个职位/0个新职位
最后一篇文章
普拉桑纳
离线
最后一次见到:2个月1周前
已加入:2020-09-29 11:56
error: Undefined reference for function definition in ble_gatts.c

嗨,对话,

我可以通过在c++构建工具设置中包含服务路径来解决没有这样的文件或目录错误。但现在,我遇到了另一个问题,即gatts.c中定义的函数的引用不明确。

我添加到项目中的custom\u service.c文件具有从ble\u gatts.c调用的函数。但是当我尝试构建时,我得到了这个错误未定义的引用,用于函数“ble\u gatts\u read\u cfm”和ble\u gatts.c中定义的所有其他函数。我将headefile\u gatts.h添加到custom\u service.c并检查了属性。我不明白哪里错了。

提前谢谢。

regards,

普拉桑纳

设备:
PM\U对话框
离线
最后一次见到:13小时1分钟前
工作人员
已加入:2018-02-08 11:03
你好,普拉桑纳,

你好,普拉桑纳,

你能共享一个截图吗?请尽量right-click into your project from the “Project explorer” window, and then click Index-> Rebuild. After that, close and re-open the project.

这是一个SDK文件,所以我假设include路径有问题。

SmartSnippets Studio的版本是什么?

谢谢,下午好

普拉桑纳
离线
最后一次见到:2个月1周前
已加入:2020-09-29 11:56
你好,下午好,

你好,下午好,

我使用的是Smartsnippets Studio v2.0.14版。1749请查找下面的错误消息。

/usr/lib/gcc/arm none eabi/10.2.0/../../../../arm none eabi/bin/ld:./custom\u service.o:在函数“do\u char\u value\u read”中:/home/prasanna/DiaSemi/SDK\u 10.0.10.118/projects/dk\u apps/demos/ble\u adv/DA1469x-00-Debug\u QSPI/./custom\u service.c:163:未定义对“ble\u gatts\u read\cfm”的引用/usr/lib/gcc/arm none eabi/10.2.0/../../../../arm none eabi/bin/ld:/home/prasanna/DiaSemi/SDK\u 10.0.10.118/projects/dk\u apps/demos/ble\u adv/DA1469x-00-Debug\u QSPI/。/custom\u service.c:152:未定义对“ble\u gatts\u read\u cfm”的引用/usr/lib/gcc/arm none eabi/10.2.0/../../../../arm none eabi/bin/ld:./custom\u service.o:in function`mcs\u notify\u char\u value':/home/prasanna/DiaSemi/SDK\u 10.0.10.118/projects/dk\u apps/demos/ble\u adv/DA1469x-00-Debug\u QSPI/。/custom\u service.c:222:未定义对“ble\u gatts\u send\u event”的引用

我按照你说的从索引中重建项目。但是,我看到了同样的错误。我已经检查了我创建的custom\u service.c文件的include路径,其中api/include(因为ble\u gatts.c在sdk/ble/api下)被添加到项目include路径。另外,我想通知您,当我尝试单击(ctrl+左键单击)用于调用custom service.c的函数时,它们指向ble\u gatts.h headerfile。总的来说,它们应该指向ble\u gatts.c中定义的函数。因此,我理解ble_gatts.c在某种程度上不被编译器识别为链接。我怎样才能摆脱这个?

2) Also, most of the time, I have to import the projects freshly when I open the IDE. how to solve this issue?

Regards,

普拉桑纳

PM\U对话框
离线
最后一次见到:13小时1分钟前
工作人员
已加入:2018-02-08 11:03
你好,普拉桑纳,

你好,普拉桑纳,

对不起,我有点困惑。这是否发生在任何SDK示例中,或者在您的自定义代码中?

Did you modify or change location to any of the SDK files?

If you are starting a new project, please follow theDA1469x型Tutorial Starting a Project,

谢谢,下午好

普拉桑纳
离线
最后一次见到:2个月1周前
已加入:2020-09-29 11:56
你好,PM\U对话,

你好,PM\U对话,

我没有修改任何SDK文件的位置。我正在使用示例ble_adv demo并尝试添加两个文件custom_service.c和custom_service.h,其中在构建项目时出现上述错误。编译器无法识别bleu gatts.c。

Regards,

普拉桑纳

PM\U对话框
离线
最后一次见到:13小时1分钟前
工作人员
已加入:2018-02-08 11:03
你好,普拉桑纳,

你好,普拉桑纳,

请在删除了.metadata文件夹的干净SDK目录中进行尝试。之后,导入SDK的ble_adv项目,构建它并验证是否一切正常。然后,导入您自己的文件。也请采取一些截图与步骤,你正在遵循和分享他们与我。

谢谢,下午好

普拉桑纳
离线
最后一次见到:2个月1周前
已加入:2020-09-29 11:56
你好,PM\U对话,

你好,PM\U对话,

我已从SDK中删除.metadata文件夹,已导入项目并尝试运行。但是,错误仍然是一样的。我附上一些照片,可能会给你更多的见解。

Regards,

普拉桑纳

附件:
PM\U对话框
离线
最后一次见到:13小时1分钟前
工作人员
已加入:2018-02-08 11:03
你好,普拉桑纳,

你好,普拉桑纳,

我用的是DA1469x自定义蓝牙服务我也不是亚伯要复制它。请尝试使用handle\u write\u req()函数,该函数调用本软件示例中提供的ble\u gatts\u write\u cfm()。

谢谢,下午好

普拉桑纳
离线
最后一次见到:2个月1周前
已加入:2020-09-29 11:56
尊敬的PM\U Dialog,

尊敬的PM\U Dialog,

I could able to solve this error. I figured out that the macros used in the specific .c file are not defined and enabled. I defined the macros and the problem is solved.

非常感谢。

Regards,

普拉桑纳

PM\U对话框
离线
最后一次见到:13小时1分钟前
工作人员
已加入:2018-02-08 11:03
你好,普拉桑纳,

你好,普拉桑纳,

很高兴你解决了你的问题,谢谢你的指示。

谢谢,下午好