我們的項目包含了很多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