我工作的一些C++代碼,包括一些小的XML解析使用TinyXML的的。因爲我知道Python的,但不能使,我使用scons的,並得到以下scons的輸出:克++無法找到包括儘管絕對地址目錄傳遞在
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
g++ -o Release-cygwin/SDLWin.o -c -ISDLWin -I/cygdrive/d/Jason/Projects/Libraries/tinyxml/2.6.2/
-I/cygdrive/d/Jason/Projects/Libraries/boost-1.47.0/boost_1_47_0/
-I/cygdrive/d/Jason/Projects/Libraries/sdl/1.2.14/include SDLWin/SDLWin.cpp
SDLWin/SDLWin.cpp:36:21: fatal error: tinyxml.h: No such file or directory
compilation terminated.
scons: *** [Release-cygwin/SDLWin.o] Error 1
scons: building terminated because of errors.
我檢查的路徑,他們都OK。此項目是用細VS2010使用相同的include路徑(壽它們不與/ cygdrive開頭!)
有問題的LOC僅僅是
#include "tinyxml.h"
我使用類似DOS的路徑規範嘗試而不是cygwin,但生成的奇怪的代碼包含路徑。我在這個錯誤上看到的所有評論都表明路徑已經搞亂了,或者沒有設置,但是我使用絕對路徑指向VS包含的相同包含文件,所以不知道發生了什麼。
TIA, -J
編輯:現在我有一個Ubuntu 11(64位)VM和試圖建立使用scons的上,在同一問題產生的代碼。
使用SCons僅在Win32喜歡的MinGW在Cygwin的使用* Windows的本地* Python解釋器時建立。我直接從cygwin提示符運行,所以這不是問題。 gcc/g ++正在執行並生成輸出的事實意味着它肯定會被發現;一個「哪個g ++」產生「/ usr/bin/g ++」,這就是所謂的scons,並不是指定一個工具路徑。順便說一句,不,我沒有安裝mingw。 – greenbutterfly