编译问题调试
下面是问题查找的全过程,从中总结出:
a)类似 make || echo hello,可以用于测试编译是否成功(对于一些没有打印的情况)
b) build_exe.pl -h 可以看帮助信息
c) make -d 可以看打印信息

1. 下面的编译命令发生错误
target/build/systems/linux/stbtv$ make
Checking environment configuration ... OK
Building application filesystem...
export STB_SW_CONFIG=bare_skyworth && \
    export _TMTGTOS=nullos && \
    export _TMTGTOSCLASS=nullos && \
    export _TMLINKTYPE=static && \
    gmake -C /home/qianjiang/apollo/sw/ga310/target/build/linux/sub-systems/bootldr ul ul_install
gmake[1]: Entering directory `/home/qianjiang/apollo/sw/ga310/target/build/linux/sub-systems/bootldr'
perl /home/qianjiang/apollo/sw/ga310/target/src/sde/scripts/build_exe.pl /home/qianjiang/apollo/sw/ga310/target/src/sd/bootldr/comps/uLoader

--------------------------------------------------------------------------------
gmake[1]: *** [ul] Error 4
gmake[1]: Leaving directory `/home/qianjiang/apollo/sw/ga310/target/build/linux/sub-systems/bootldr'
make: *** [all] Error 2

2. 阅读makefile,提取实际执行的命令
target/build/systems/linux/stbtv$ export STB_SW_CONFIG=bare_skyworth && export _TMTGTOS=nullos && export _TMTGTOSCLASS=nullos && export _TMLINKTYPE=static && gmake -C /home/qianjiang/apollo/sw/ga310/target/build/linux/sub-systems/bootldr ul ul_install
gmake: Entering directory `/home/qianjiang/apollo/sw/ga310/target/build/linux/sub-systems/bootldr'
perl /home/qianjiang/apollo/sw/ga310/target/src/sde/scripts/build_exe.pl /home/qianjiang/apollo/sw/ga310/target/src/sd/bootldr/comps/uLoader

--------------------------------------------------------------------------------
gmake: *** [ul] Error 4
gmake: Leaving directory `/home/qianjiang/apollo/sw/ga310/target/build/linux/sub-systems/bootldr'

3. 通过下面的命令找到了错误的命令
target/build/systems/linux/stbtv$ perl /home/qianjiang/apollo/sw/ga310/target/src/sde/scripts/build_exe.pl /home/qianjiang/apollo/sw/ga310/target/src/sd/bootldr/comps/uLoader || echo hello


4. build_exe.pl -dbg显示更多调试信息
perl /home/qianjiang/apollo/sw/ga310/target/src/sde/scripts/build_exe.pl /home/qianjiang/apollo/sw/ga310/target/src/sd/bootldr/comps/uLoader -dbg

5. 上述调试输出发现
gmake --no-print-directory -C /home/qianjiang/apollo/sw/ga310/target/src/sd/bootldr/comps/uLoader -f makefile all || echo hello
失败

6. cd /home/qianjiang/apollo/sw/ga310/target/src/sd/bootldr/comps/uLoader
make || echo hello,发现是这里的错误

7. make -d
发现boxcfg.h找不到,是由于skyworth.cfg没有