Yocto中始终使用DEBUG_FLAGS

时间:2018-11-30 08:21:31

标签: gcc yocto bitbake

我试图通过Yocto来构建程序,但是遇到了可执行文件较大的问题。经过一番调查,我发现我的程序是用GCC标志-g构建的(产生调试信息)。事实证明,此标志已在文件bitbake.conf中设置:

DEBUG_FLAGS ?= "-g -feliminate-unused-debug-types ${DEBUG_PREFIX_MAP}"

# Disabled until the option works properly -feliminate-dwarf2-dups
FULL_OPTIMIZATION = "-O2 -pipe ${DEBUG_FLAGS}"
DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe"
SELECTED_OPTIMIZATION = "${@d.getVar(oe.utils.vartrue('DEBUG_BUILD', 'DEBUG_OPTIMIZATION', 'FULL_OPTIMIZATION', d))}"

因此,在每个构建中都使用标志-g,没有定义或没有差异DEBUG_BUILD变量。我发现的唯一解决方法是在程序配方中设置${DEBUG_FLAGS} = " "

所以,我的问题是:有没有更好的解决方案?并且,Yocto中的所有软件包都带有调试标志是正常的吗?似乎是一种超限解决方案,尤其是对于嵌入式设备。

1 个答案:

答案 0 :(得分:0)

请参阅@Parthiban评论。本质上没有问题。