2012-02-05 33 views
1

我有一個Jamroot文件,看起來有點像這樣;Boost構建,無法找到文件或目標x

project foo ; 

alias bar ./src/path/to/bar//bar 
build-project bar ; 

總是給人煩人的錯誤

error: Unable to find file or target named 
error:  '/foo//bar/' 
error: referred from project at 
error:  '.' 

與運行;

bjam --debug-building 
building project Jamfile</home/chris/code/foo> ('object(project-target)@163') with 
{.. as above ...} 

沒有任何幫助。

如果我將目錄切換到文件夾並鍵入bjam,則項目的該部分完美地構建。

作爲一種解決方法,我有一個腳本可以在所有文件夾中執行此操作,但我很想知道爲什麼'正確'的方式不起作用。

我使用的bjam以下版本

bjam --version 
Boost.Build V2 (Milestone 12) 
Boost.Jam 03.1.16 

非常感謝

回答

2

我發現我實際上並不需要這樣做;只需在Jamroot中將子項目列爲別名就足以讓bjam構建它們。

因此,構建項目步驟是不需要的和錯誤的。

我也發現這從Boost build reference page;

build-project;導致一些其他項目的建立。該規則採用單個參數 - 與包含的Jamfile相關的目錄名稱。當包含Jamfile時,位於該目錄的項目也將被建立。目前,此規則的參數應該是目錄名稱。 不允許使用項目ID或一般目標參考。「(我突出顯示)

相關問題