2012-02-22 145 views
1

將Microsoft的NMAKE與-I選項一起用於包含路徑。它適用於在這些文件夾中包含文件,但似乎無法找到一個在名爲子文件夾:NMAKE無法在子文件夾中找到包含文件

這裏的結果命令&錯誤消息:

cl /nologo /Ox /MD /EHsc /W3 /D_CRT_SECURE_NO_DEPRECATE -I "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\sys"; -I. "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\sys" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include" "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include" -DAVOID_WIN32_FILEIO -DCHECK_JPEG_YCBCR_SUBSAMPLING -DDEFAULT_EXTRASAMPLE_AS_ALPHA -DSTRIPCHOP_DEFAULT=TIFF_STRIPCHOP -DSTRIP_SIZE_DEFAULT=8192 -DLOGLUV_SUPPORT -DNEXT_SUPPORT -DTHUNDER_SUPPORT -DLZW_SUPPORT -DPACKBITS_SUPPORT -DCCITT_SUPPORT -DTIF_PLATFORM_CONSOLE -DFILLODER_LSB2MSB /c tif_unix.c 

tif_unix.c 
tif_unix.c(35) : fatal error C1083: Cannot open include file: 'sys/types.h': No such file or directory 

有兩點需要注意:

  1. 「丟失」的文件,「types.h中」,是「SYS」的包括路徑之一的子文件夾,所以「SYS/types.h中」應該已經發現,並

  2. 「sys」子文件夾也包含在內(絕望中)和types.h中沒有找到STILL。

任何想法,爲什麼這包括文件無法找到?

+0

您的評論表明我的答案解決了您的問題;你會將它標記爲已接受嗎? – 2012-02-24 19:40:08

+0

完成,謝謝! – user20493 2012-04-10 18:24:57

回答

2

它看起來像你沒有正確使用該選項。語法爲-I directory,根據Microsoft文檔,to add more than one directory, you must use this option more than once。如果您忠實地複製了您正在使用的實際命令行,那麼您已獲得-I directory -I directory directory directory directory,因此會忽略幾個包含目錄。

假設你想在包括路徑所有這些目錄的,正確的語法是:

-I "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\sys" 
-I. 
-I "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\sys" 
-I "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include" 
-I "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include" 

注意使用-I每個目錄之前,包括.

+1

謝謝埃裏克 - 你釘了它! – user20493 2012-02-23 16:50:21

相關問題