2013-03-08 46 views
2

我使用CMake和Visual Studio在Windows中構建Podofo,並且有這兩個問題。CMake錯誤 - 無法檢測libjpeg和ADD_SUBDIRECTORY()錯誤

一個是CMake無法檢測libjpeg。

CMake的警告在的CMakeLists.txt:312(FIND_PACKAGE):通過在CMAKE_MODULE_PATH不提供 「FindLIBJPEG.cmake」 這個項目已經要求 CMake的發現由 「中的libjpeg」 提供了一個程序包配置文件,但 的CMake沒有找到一個。

無法找到「的libjpeg」 與下列任何名稱的提供程序包配置文件:

LIBJPEGConfig.cmake 
libjpeg-config.cmake 

添加的「libjpeg的」安裝前綴CMAKE_PREFIX_PATH或設置 「LIBJPEG_DIR」到一個目錄包含上述文件之一。如果
「LIBJPEG」提供了單獨的開發包或SDK,請確保它已安裝 。

未找到Libjpeg。支持JPEG將被禁用

雖然我已經設置在如下build.cmd文件命令:

set LIBJPEG_DIR=D:\jpeg-9 
    cmake -G "Visual Studio 10" ..\podofo-src -DCMAKE_INCLUDE_PATH="%LIBJPEG_DIR%" -DCMAKE_LIBRARY_PATH="%LIBJPEG_DIR%" -DPODOFO_BUILD_SHARED:BOOL=FALSE -DFREETYPE_LIBRARY_NAMES_DEBUG=freetype245_D -DFREETYPE_LIBRARY_NAMES_RELEASE=freetype245MT 

所有libjpeg的文件都在d:\ JPEG-9,頭文件和lib文件。爲什麼Cmake仍然無法檢測到LIBJPEG?

另一個問題是在運行CMake時出現如下錯誤。

CMake的錯誤在的CMakeLists.txt:502(ADD_SUBDIRECTORY):
add_subdirectory給定源 「SRC」,這不是現有 目錄。

所以我搜索的CMakeLists.txt及以下命令發現:

ADD_SUBDIRECTORY(src) 

什麼原因這個錯誤?如何避免錯誤?

謝謝。

回答

0

要讓CMake找到libjpeg,您需要將CMAKE_PREFIX_PATH設置爲D:\ jpeg-9而不是CMAKE_INCLUDE_PATHCMAKE_LIBRARY_PATH。如果D:\ jpeg-9 \ libjpeg-config.cmake存在,那麼find_package應該選取它。

至於你的第二個問題,它看起來像你有一個腐敗的源碼樹。 ADD_SUBDIRECTORY(src)將需要一個名爲「src」的目錄與CMakeLists.txt(可能是根文件夾?)存在於同一文件夾中。也許新鮮的下載/結帳可以幫助您。