前言,昨天在奕力科技调试触摸屏。找不到人家的驱动文件。一问原来是隐藏了。
具体步骤
1,make xx.c xx.o
2, $ ar -r libxxx.a xxx.o
3,modify makefile //for ex u-boot/common/cmd_jiangdou.c ,,make cmd_jiangdou.o
$ ar -r libjiangdou.a common/cmd_jiangdou.o
$ rm common/cmd_jiangdou.c //这样删掉cmd_jiangdou.c ,别人照样可以编译,但是不能看其内容或者修改了
[csharp] view plain copy
quiet_cmd_u-boot__ ?= ld $@
cmd_u-boot__ ?= $(ld) $(ldflags) $(ldflags_u-boot) -o $@ \
-t u-boot.lds $(u-boot-init) \
--start-group $(u-boot-main) --end-group \
$(platform_libs) -l ./ -ljiangdou -map u-boot.map
quiet_cmd_smap = gen common/system_map.o
cmd_smap = \
4, dou@ubtu:/work/u-boot$ ar -t libjiangdou.a
cmd_jiangdou.o
dou@ubtu:/work//u-boot$
5 file -> cmd_jiangdou.c
#include <jiangdou.h>//add by jiangdou for sd
unsigned char display_param[1024];
int update_env(void)//common/board_r.c
{
unsigned char buf[32]="";
int ret;
unsigned int i;
//printf("update jiang_dou param file ...........\n");
display_cfg_init();
memset(display_param, 0, sizeof(display_param));
//printf("%d\n",sizeof(cfg));
//display_cfg_init(cfg);
i = 0;
if(disp_cfg == 1)
{
//printf("===file====\n");
//printf("%s\n",display_param);//display_param = 屏参文件内容
//setenv("display_param", display_param);
//saveenv();
//getprofilestring(display_param, "display_param", "clock-frequency", dou);
for(i =0; i < 17; i++){
ret = getprofilestring(display_param, "display_param", cfg[i].name, buf);
if(ret < 0){
return ;
}
else{