我的ARM DS-5是5.19版的
用DS-GCC的编译链,将程序编译好后,我用RES模式准备单步调试;
爆出错信息如下
Preparing the debug session
# cd "/home/hehe/ads"# export LD_LIBRARY_PATH=".:/home/hehe/ads:$LD_LIBRARY_PATH"# gdbserver :5000 "/home/hehe/ads/helloworld" FATAL: kernel too oldSegmentation fault#
这是啥原因,我用飞思卡尔提供的gcc交叉编译链没问题,但唯一不好的地方就是那编译链是linux版的,在windows用不了
飞思卡尔提供的gcc是 gcc-4.6.2 glibc-2.13-linaro-multilib-2011.12
网上有人说是glibc版本跟linux核匹配问题,glibc限制了linux核最低可用版本
目前我那板子的BSP提供的核版本是3.0.35
如果我在windows下用ARM DS-5能否用起来,还有ARM DS-5的编译链就不能做成跟google NDK的编译链那样可以选gcc的版本和glibc的版本的吗?
那比较确定是你用的gdbserver和你的目标板内核不兼容的问题。
由于内核版本和工具链不同,这种兼容问题是有可能的。
建议你最好还是去自己生成gdbserver进行调试。
如何编译与DS兼容的gdbserver,求教
在C:\Program Files\DS-5\arm\gdbserver\android\README.txt里面有详细的步骤。
网上也有多个参考,比如
DS-5教程-使用ARM DS-5模拟器进行开发调试 - 米尔科技
http://www.veryarm.com/648.html
有问题,找度娘!
MYIR - Make Your Idea Real 的教程写的不错,赞