src
|--Manager.cpp
|--Specializations
| |--Manager.cpp
建設這個Boost.Build來源試圖創建Boost構建 - 具有相同名稱
/bin/...
|--Manager.o
|--Manager.o
但失敗。如何自動解決這個問題?我讀FAQ item,但我不喜歡這個解決方案,因爲當我有一個相同的類名,但名稱空間不同時,我必須手動修復這些問題。是否有可能使Boost.Build自動將前綴目標文件名稱與目錄?
/bin/...
|--Manager.o
|--Specializations.Manager.o
還是複製源目錄樹?
/bin/...
|--Manager.o
|--Specializations
| |--Manager.o
我有一個非常類似的問題:在一個項目的源代碼與可執行目標名稱相同的目錄中,boost b2默認嘗試創建可執行文件的位置與,目錄樹與目標文件中。這是一個真正的痛苦,我沒有一個解決方案(除了重命名目標,這導致其他問題)...例如bin/gcc-4.4.7/release/threading-multi包含source-dir-name,因此可以構建具有相同名稱的目標名稱。 – fig 2014-01-15 14:01:00
@fig在我看來,從boost中獲得的版本與從boost版本官方網頁中獲得的版本完全不同。例如boost版本的「boost」版本現在對我來說根本不起作用,而boost版本的boost版本仍然正常工作。後者也創建一個合適的目錄樹。轉到http://www.boost.org/boost-build2/並從那裏嘗試版本。你可以很容易地將它嵌入到你的項目中(我們有這樣的)。如果它不起作用,請在這裏通知我。 – 2014-01-16 11:28:38