1.添加环境变量
tar xvjf arm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bz2 -C /home/embest ;安装交叉编译工具
以上工具安装完成后,还需要使用如下命令把它们添加到环境变量中:
export PATH=/home/embest/arm-2007q3/bin:/home/embest/tools:$PATH
完成环境变量的添加,查看路径可以使用echo $PATH 命令。
电脑通过串口与开发板连接,在超级终端下
printenv可以查看环境变量
printenv stdin查看某个环境变量stdin
setenv添加、修改、删除环境变量
setenv fiel 123;添加环境变量file=123
setenv fiel 456;修改为456
setenv fiel ;删除file
seveenv保存环境变量
进行嵌入式开发前先 安装交叉编译工具
安装到指定目录,把arm文件中的bin添加到环境变量
用arm-linux-gcc就可以编译出在arm上执行的二进制文件
终端输入 :arm-linux-gcc hello.c -o hello
生成的hello就是可以在arm上执行的二进制文件
2.反汇编工具arm-linux-objdump
终端输入:arm-linux-objdump -D -S hello
也可以输入到任意文件中 arm-linux-objdump -D -S hello >log
vi log
这样就把hello变为汇编语言 并且保存到 log中
3.ELF文件查看工具:arm-linux-readelf
arm-linux-readelf -a hello;-a是查看全部
也可以输出至log:arm-linux-readelf -a hello >log
vi log
查看log中有很多有用信息,注意class中是little endian一定要匹配,程序跑不起来 首先查看machine是否是arm,再看大小端对不对little endian
arm-linux-readelf -d hello;查看hello使用的动态库,查看共享库。
程序./hello有时提醒找不到hello,并不是找不到hello,而是找不到共享库,解决方法:把库复制到libaray
或者 arm-linux-gcc -static hello.c -o hello