我對我的項目使用boost.build。當然,我使用增強本身。另外,爲了測試目的,我在項目中使用了google-test庫。我必須將我的項目與google-test的靜態庫鏈接起來。我已經找到了解決辦法做就是MinGW的(對於Linux的海灣合作委員會的工作太)如何將boost.build項目鏈接到特定的靜態庫
exe foo : $(IMPORTANT_PART) $(TEST_UTILITY_PART) : <toolset>gcc <linkflags>"../../libs/gtest-1.6.0/libs/gtest_main.a" <linkflags>-static <linkflags>-lpthread ;
它看起來有點醜陋,但它的工作原理。對於MSVC規則看起來會更難看
exe foo : $(IMPORTANT_PART) $(TEST_UTILITY_PART) : <toolset>msvc <linkflags>/LIBPATH:../../libs/gtest-1.6.0/libs <linkflags>/DEFAULTLIB:gtest_main-mdd.lib
<linkflags>/DEFAULTLIB:gtestd-md.lib
;
是否有與boost.build項目文件的外部靜態庫鏈接目標更自然的方式。
P.S.使用谷歌測試和增強混合氣味不太好,但無論如何,有很多外部庫覆蓋的地區提升不包括。
TIA
至少可以讓Jamroot進行谷歌測試,並使用use-project語句將我的項目鏈接到這個新項目。並使用增強鏈接功能。但是如何連接外部靜態庫的問題仍然是開放的 –