src目录下的对象编译后输出位置不在build内

自己对src的脚本进行了修改,编译后的.o无法输出到build目录下,该如何解决

汇编阶段是把编译阶段生成的”.s”文件转成二进制目标代码“.o”文件,然后在成功编译之后,就进入了链接阶段,链接成最终可执行文件,我猜可能是编译后未链接成功,

所以检查编译命令

然后检查一下 编译器是否拥有输出目标文件夹的读写权限

又或者旧的构建文件残留,需要删除之后才能重新编译输出

使用官方的脚本语法可以正常输出到build,使用上述自定义脚本语法不行,实测

可能是使用了绝对路径

是的,不要用GetCurrentDir构造绝对路径
因为是在下级目录里,像这样用相对路径就行了

import os
from building import *

# Add source code
src = Glob('*.c')

src += Glob('**/*.c')

group = DefineGroup('Applications', src, depend = [''])

Return('group')

好的 我尝试修改一下


问题已解决

应该是路径有问题。