针对上次(2009年04月04日)的情况,自己检查一番:(花了2个半天。。。那个汗啊)
注意查看此Makefile文件的执行情况(只需要打印这些数据信息(不执行命令)注1):
打开/tmp/Makefile,根据前面的打印信息:
先定位第一行:/sbin/ldconfig
在/tmp/Makefile中仔细搜素"/sbin/ldconfig",得到:
注意这行信息:
-@find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIP) 2>/dev/null || true;
先确定$(STRIP)的值,在调试目标文件/tmp/Makefile中搜索STRIP,得到
即所要找的"去掉符号表"!!! 这句话的含义是: 在目标文件夹中搜索 类型为f 并且文件掩码含有可执行位的文件,注意这里的“可执行位”是指“只要有都匹配这种格式”,去掉符号表
-perm +111的含义是(参考man find)
perm +mode:Any of the permission bits mode are set for the file.
然后找到命令定义所在文件,注意看这行信息
打开文件 target/jffs2/jffs2root.mk,定位到line 43,find
果然有:
好了大展拳脚吧!!!嘿嘿 改上面的一行为
这样我们生成的*.so,*.ko不管文件掩码为什么都不会被去掉符号表了!
哈哈哈
注1:
参阅http://www.linuxsir.org/main/doc/gnumake/GNUmake_v3.80-zh_CN_html/make-09.html
-p
--print-data-base
命令执行之前,打印出make读取的Makefile的所有数据(包括规则和变量的值),同时打印出make的版本信息。如果只需要打印这些数据信息(不执行命令)可以使用“make -qp”命令。查看make执行
前的预设规则和变量,可使用命令“make –p -f /dev/null”。