我们的项目包含了很多C++源代码,直到现在我们都唱歌制作一切,但这需要很长时间。所以我偶然发现了waf,它工作得很好,加速了构建。然而,每次我做一个完整的构建时,我都会遇到一些没有意义的构建错误。如果我现在进行增量构建,大部分时间都是第一次无法构建的源代码现在正在构建,其他一些仍然失败。在另一个增量构建中,我将最终获得成功构建。Waf在C++版本上抛出错误
我试过在单独的步骤中构建单独的库,以防万一任何相关库试图并行构建,但错误仍然出现。
编辑:我不断收到的错误似乎与我的代码没有任何关系,例如,
Build failed
-> task failed (exit status -1):
{task 10777520: c constr_SET.c -> constr_SET.c.1.o}
继另一个“waf build”之后,我再也没有遇到这个错误。
EDIT2:我的库构建步骤如下:
def build(bld):
bld.shlib(source="foo.cpp bar.cpp foobar.cpp constr_SET.c",
target="foobar",
includes= "../ifinc",
name="foobar",
use="MAIN RW HEADERS",
install_path = "lib/")
MAIN,RW,头部只是一些标志和外部的库,我们使用。
有没有人在他们的系统上看到类似的行为?甚至是解决方案?
你显然没有得到正确的依赖关系(可能链接步骤)。但是你没有举出一个例子,甚至没有发现错误,所以我们不能帮忙。 – sehe
你当然是对的,用一个例子更新。这很可能是一个依赖关系的问题,但是,在构建我们的共享库期间,这些错误不断出现,它们之间没有任何依赖关系(我们将头文件复制到中央目录以避免依赖关系)。 – pushy