项目中用到了了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解决(需要在启动时就调用)