rtthread dcm组件dcm_cache_save接口mkdir:/data failed解决办法

博客讲述了在项目中遇到rtthreaddcm数据持久化组件在dcm_cache_save时出现mkdir:/data失败的问题。错误源于dcm_default_storage_name未在启动时赋值,导致默认尝试创建/data目录而没有权限。解决方案是确保在启动时设置dcm_default_storage_name为DCM_DEFAULT_STORAGE_NAME宏定义的路径,从而避免权限错误。
摘要由CSDN通过智能技术生成

项目中用到了了rtthread dcm 数据持久化组件,但是在dcm_cache_save时报mkdir:/data failed

但是这个错误日志不是本项目的代码,经确认是dcm接口内部打印的日志

然后确认了宏#define DCM_DEFAULT_STORAGE_NAME "/user/data/db/dcm" 在rtconfig.h中已经

声明,同时业务代码在系统启动时也有用到该宏

最后排查是因为dcm_default_storage_name在系统启动时需要赋值,dcm组件的dcm_strg.o依赖

这个变量,没赋值的话会默认mkdir:/data 但是/data没权限就会报那个错

所以dcm_default_storage_name = DCM_DEFAULT_STORAGE_NAME解决(需要在启动时就调用)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值