摘要: start_kernel -->asm-offset.h 生成 -->proc_info_list -->machine_desc -->__vet_atags -->cpu位图 -->setup_arch -->parse_tags -->命令行参数处理1 -->paging_init -->bu 阅读全文
posted @ 2018-08-03 21:45 bluebluebluesky 阅读(693) 评论(0) 推荐(0) 编辑
摘要: gzip、bizp2只能对一个文件进行压缩,而不能对多个文件和目录进行压缩。 所以需要tar来对多个目录、文件进行打包和压缩。 tar常用选项 1.tar打包、gzip压缩 1)压缩 tar -czvf 压缩文件名 目录名 如: tar czvf dira.tar.gz dira 注意:tar -c 阅读全文
posted @ 2019-10-13 22:01 bluebluebluesky 阅读(582) 评论(0) 推荐(0) 编辑
摘要: bzip2的常用选项: 1)压缩 bzip2 -k 源文件名 比如:bzip2 -k mypwd.1 得到一个.bz2后缀的压缩文件 2)解压 bzip2 -kd 压缩文件名 比如:bzip2 -kd mypwd.1.bz2 注意: 1)如果bzip2不加任何选项,此时为压缩,压缩完该文件会生成后缀 阅读全文
posted @ 2019-10-13 21:56 bluebluebluesky 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 单个文件的压缩(解压) gzip的常用选项: 1)查看 gzip -l 压缩文件名 比如: gzip -l pwd.1.gz 2)解压 gzip -kd 压缩文件名 比如: gzip -kd pwd.1.gz 该压缩文件是以.gz结尾的单个文件 3)压缩 gzip -k 源文件名 比如:gzip - 阅读全文
posted @ 2019-10-13 21:53 bluebluebluesky 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 驱动模块编译makefile如下: make -C $(KERN_DIR) M='pwd' modules,这句是makefile的规则:-C选项的作用是指将当前工作目录转移到你所指定的位置,当make的目标为all时, -C $(KERN_DIR) 指明跳转到内核源码目录下读取那里的Makefil 阅读全文
posted @ 2019-10-12 20:48 bluebluebluesky 阅读(596) 评论(0) 推荐(0) 编辑
摘要: 参考《专业嵌入式软件开发》中Makefile的complicated工程代码。 工程目录结构如下: 1.Makefile 2.main.c 3.foo.c 4.foo.h 5.define.h 阅读全文
posted @ 2019-10-06 21:59 bluebluebluesky 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 在GNU make中对变量的赋值有两种方式:延时变量、立即变量。区别在于它们的定义方式和扩展时的方式不同,前者在这个变量使用时才扩展开,意即当真正使用时这个变量的值才确定;后者在定义时它的值就已经确定了。使用`=’,`?=’定义或使用define指令定义的变量是延时变量;使用`:=’定义的变量是立即 阅读全文
posted @ 2019-10-06 17:07 bluebluebluesky 阅读(925) 评论(0) 推荐(0) 编辑
摘要: 静态库制作、编译: gcc -c -o main.o main.c gcc -c -o sub.o sub.c gcc -c -o sub2.o sub2.c ar crs libsub.a sub.o sub2.o(可以使用多个.o生成静态库) gcc -o test main.o libsub. 阅读全文
posted @ 2019-10-06 10:41 bluebluebluesky 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 一个C/C++文件要经过预处理(preprocessing)、编译(compilation)、汇编(assembly)和链接(linking)等4步才能变成可执行文件。 常用编译选项: 常用选项 描述 -E 预处理,开发过程中想快速确定某个宏可以使用“-E -dM” -c 把预处理、编译、汇编都做了 阅读全文
posted @ 2019-10-06 10:03 bluebluebluesky 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 先列出以下几条命令: 1. gcc -M c.c :打印出依赖,预处理结束就停止编译。2. gcc -M -MF c.d c.c:把依赖写入文件c.d,预处理结束就停止编译。3. gcc -c -o c.o c.c -MD -MF c.d:编译c.c输出目标文件为c.o, 并把把依赖写入文件c.d。 阅读全文
posted @ 2019-10-05 20:12 bluebluebluesky 阅读(886) 评论(0) 推荐(0) 编辑
摘要: $(shell command arguments) 名称: 执行 shell 命令函数功能: 在新的 shell 中执行 CMD 命令返回值: CMD 在 shell 中执行的结果 例如:PLATFORM=$(shell $(ROOT)/systype.sh)在执行完下面的脚本后等价于PLATFO 阅读全文
posted @ 2019-10-05 20:03 bluebluebluesky 阅读(460) 评论(0) 推荐(0) 编辑