2013-05-30 68 views
0

我正在嘗試使用boost-build構建一個使用excel自動化對象的dll。boost-build無法正確定位.tli文件並中止

它只有一個.cpp文件,其中包括mso.tlh,vbe6ext.tlh和excel.tlh文件(相應的.tli文件也存在)。所有文件都與jamfile一起存在於一個目錄中。

在Jamfile中指定了「< include> ./」。但是,當我嘗試構建它時,因爲它正在Jamroot文件所在的目錄中查找excel.tli文件,而不是jamfile和excel.tli文件所在的位置。

如果我把excel.tli放在Jamroot所在的位置,構建就會成功。

我該怎麼做才能使它在Jamfile所在的目錄中查找excel.tli文件?

回答

1

如果頭文件與源文件並排,則不需要將其放在搜索路徑中。只要確保源文件包括他們使用引號,不是尖括號,即

#include "excel.tlh" 
#include "mso.tlh" 
#include "vbe6ext.tlh" 

或者,您使用path-constant規則可以提供正確的搜索路徑。 添加在你的Jamfile如下:

path-constant HERE : . ; 

現在你可以使用$(HERE)至於Jamfile的目錄

exe my_exe : ... : <include>$(HERE) ; 
參考