在linux环境下编译avr单片机程序
看到公司的老外都是用Linux编译AVR的程序,感觉很强,而且本人也很喜欢linux,所以决定进行学习,现记录一下学习过程:
1.编译我们的算法文件,也就是老外以前发给我们这边的关于算法的.o文件。遇到小困难,提示for' loop initial declaration used outside C99 mode
,网上查了一下,在编译的时候加上-std=c99就OK了,听说将for循环里的变量放到外面也可以;
2.在编译汇编文件的时候,出现了很多错误,看上去就好像编译器把汇编文件当成了.c文件,在选项中加上-x assembler-with-cpp就好多了;
3.将各个源文件编译成.o文件后,进行链接生成.elf文件,但总是提示:undefined reference to 'asm',asm是用来嵌入汇编的,找了很久,即使使用winavr相同的命令,最后链接的时候还是会出现这个错误。经过长期的和winavr之间的对比,终于发现:其实就是在第一步上面加的-std=c99有问题,winavr上使用的是-std=gnu99,将文件全部重新编译之后,OK,最后使用avr-objcopy将.elf转换为.hex,Finished!
相关文档:
本土参考文章:《剖析Linux系统启动过程》
附录:剖析Linux系统启动过程
本文以RedHat9.0和i386平台为例,剖析了从用户打开电源直到屏幕出现命令行提示符的整个Linux启动过程。并且介绍了启动中涉及到的各种文件。
阅读Linux源代码,无疑是深入学习Linux的最好方法。在本文对L ......
概述
在目前以IPv4为支撑的网络协议上搭建的网络环境中,SYN Flood是一种非常危险而常见的DoS攻击方式。到目前为止,能够有效防范SYN Flood攻击的手段并不多,而SYN Cookie就是其中最著名的一种。SYN Cookie原理由D. J. Bernstain和 Eric Schenk发明。在很多操作系统上都有各种各样的实现。其中包括Linux。本文就分别介绍� ......
(呵)近一段时间由于工作需要,终于开始玩Linux了,今天搞了一天的MySQL编译安装,记录下来,备忘吧!!
(卡)安装环境:VmWare5(桥接模式) + RedHat E AS 4 + 已安装了开发工具以及相关开发包(安装Linux系统时自己要定制的),并测试成功
(!)先给出MySQL For Linux 源码下载地址,是xx.tar.zg格式的
http://www.fil ......
Linux操作系统内核启动参数详细解析
Linux内核在启动的时候,能接收某些命令行选项或启动时参数。当内核不能识别某些硬件进而不能设置硬件参数或者为了避免内核更改某些参数的值,可以通过这种方式手动将这些参数传递给内核。
如果不使用启动管理器,比如直接从BIOS或者把内核文件用“cp zImage /dev/ ......
嵌入式linux启动信息注释之bootloader
作为一名嵌入系统开发者,你一定遇到过下面的情景:
在某论坛上看到一篇帖子,上面贴着嵌入式linux开发板启动时的有关信息,然后大家在帖子里讨论着这个启动过程中出现的问题,随机举例如下:
Linux version 2.4.20-uc0 (root@Local) (gcc version 2.95.3 20 ......