懒成狗的猫 发表于 2018-12-26 10:21:02

求助:程序运行到abs函数就挂了,跳到rt_hw_hard_fault_exception

操作系统是buntu 18.04.1 LTS
IDE是eclipse c/c++
stm程序用的操作系统是rtthread
只要程序运行到标准库函数或math函数时就会挂,直接进入rt_hw_hard_fault_exception函数了

aozima 发表于 2018-12-26 11:12:09

重点检查栈溢出

懒成狗的猫 发表于 2018-12-26 11:15:26

aozima 发表于 2018-12-26 11:12
重点检查栈溢出

最近切到ubuntu的,同样的程序在windows下是正常的,调用标准库函数的那个函数也正常得出数据

qinxg 发表于 2018-12-26 11:19:45

打开堆栈的调试窗口, 看下函数调用关系

懒成狗的猫 发表于 2018-12-26 11:24:07

qinxg 发表于 2018-12-26 11:19
打开堆栈的调试窗口, 看下函数调用关系

感觉跟newwib有关系,但是对这些不太熟

懒成狗的猫 发表于 2018-12-26 11:26:19

懒成狗的猫 发表于 2018-12-26 11:24
感觉跟newwib有关系,但是对这些不太熟

可不可能是因为调用的是arm-none-eabi里面的库,而不是调用的linux系统的标准库而导致的

懒成狗的猫 发表于 2018-12-26 11:29:04

qinxg 发表于 2018-12-26 11:19
打开堆栈的调试窗口, 看下函数调用关系

Can't find a source file at "/build/newlib-8gJlYR/newlib-2.4.0.20160527/build_nano/arm-none-eabi/newlib/libc/stdlib/../../../../../newlib/libc/stdlib/abs.c"
Locate the file or edit the source lookup path to include its location.提示是无法在此路径找到abs.c文件

懒成狗的猫 发表于 2018-12-28 17:49:34

已解决,下载gnu-mcu-eclipse-arm-none-eabi-gcc-7.3.1-1.1-20180724-0637-centos64,工具链路径设置到此文件下就可以了,系统bin目录的工具链可能缺少相关的文件!

zxq6 发表于 2018-12-28 18:05:35

看来linux下开发就是要折腾啊。
页: [1]
查看完整版本: 求助:程序运行到abs函数就挂了,跳到rt_hw_hard_fault_exception