Fopen函数创建打开文件失败,导致vfprintf函数失败,出现段错误

项目场景:

Linux下设备,项目中需要保存设备运行时候相关的日志,所以使用fopen函数创建相关日志文件,方便后现场环境续定位问题。


问题描述

调用fopen等一系列i函数,结果设备烧完底层再升级大包,出现段错误,导致升级失败。

下面是串口调试信息:

M2RU-C login: 
PetaLinux 2019.2 M2RU-C /dev/ttyPS0

M2RU-C login: 
PetaLinux 2019.2 M2RU-C /dev/ttyPS0

M2RU-C login: dasUse/drgfly/etc/usrapp.sh: line 8:  2346 Segmentation fault      /drgfly/app/ARM

原因分析:

/************************* 设备日志 *******************************/
#define DEVICELOG_EN            1
#define MONITOR_DIR            "/drgfly/webomt/web/www/LogFiles/DeviceLog/" 
#define TXT_LOG_NAME           "DeviceTxt.log" 
 

void OpenLogFile(void)
{
    LogFile = fopen((char *)(MONITOR_DIR TXT_LOG_NAME), "a");
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值