2016-04-26 45 views
2

我的論文我想用Dlib's face_landmark_detection,但我一直運行到這些錯誤(這兩個Visual studio 2013 as well as 2015):Visual Studio和DLIB:「無法打開包含文件:'zlib.h:沒有這樣的文件或目錄」

"cannot open include file: 'zlib.h': No such file or directory" 

"'F77_INT': undeclared identifier". 

它重演,所以我有一個基於這兩個問題36個錯誤。

我的導師給了我一些步驟來設置項目:

  • 添加dlib-master和DLIB主\例子VC++目錄 - >包括目錄
  • 添加DLIB主\ DLIB \外部\ libjpeg和dlib-master \ dlib \ entropy_decoder到C/C++ - >常規 - >其他包含目錄
  • 將所有文件夾和項目從dlib-master \ dlib \ external(cblas,libjpeg,libpng和zlib)添加到項目源文件夾
  • 添加dlib sou rce文件(從dlib-master \ dlib \ all)並將face_landmark_detection(從dlib-master \ examples)添加到項目源文件夾。

據他介紹,迄今爲止,這一直在所有其他計算機上工作,但在我的筆記本電腦,它不會。我們檢查了項目,但zlib.h位於項目的zlib文件夾中。這裏有人有什麼想法可能會出錯嗎?

如果我沒有提供足夠的信息,請詢問。我不知道還有什麼可能需要解決這個問題。

+0

您正在使用哪個版本的Visual Studio。? – Mavie

+0

2013和2015都不起作用。現在我只和2013 – Sharonneke95

+0

一起工作你有沒有試過這個[鏈接](https://aleen42.gitbooks.io/personalwiki/content/qa/dlib.html)。它清楚地描述了使用Visual Studio 2013配置dlib。 – Mavie

回答

0

使用CMake配置您的使用dlib的項目可能是最容易的。它避免了手動設置所有這些路徑。在CMake配置步驟中,您可以禁用像zlib這樣的庫的使用,您不需要/不需要。下面是一個例子的CMakeLists.txt這對我的作品:

cmake_minimum_required(VERSION 2.6) 
PROJECT(DatasetClassifier CXX C) 
set(dlib_DIR "" CACHE PATH "Path to dlib") # http://dlib.net/ 
include(${dlib_DIR}/dlib/cmake) 
ADD_EXECUTABLE(DatasetClassifier DatasetClassifier.cpp) 
TARGET_LINK_LIBRARIES(DatasetClassifier ${dlib_LIBRARIES}) 
+0

對不起,遲交的答案。我們決定繼續使用不同的代碼,這就是爲什麼我不能真正嘗試這個了,但如果我沒有記錯,那麼項目中就有一個CMake。你認爲那個可能有錯誤嗎? – Sharonneke95

+0

不一定是CMakeLists.txt中的錯誤,而是CMake用於配置項目時選擇啓用的選項。嘗試在CMake GUI中禁用zlib。 –

0

我剛剛參加了這個同樣的問題,想後我的解決方案,因爲我已經找到關於這個問題這麼多相互矛盾的文檔。

需要將包含dlib文件夾以及來自dlib/external的libpng,libjpeg和zlib文件夾的文件夾添加到解決方案設置中的其他包含目錄列表中。

dlib/all/source.cpp以及libpng,libjpeg和zlib的源文件也需要添加到項目中。

請注意,CBLAS應將而不是以任何方式添加到項目中,因爲它需要Fortran進行編譯,並且很難從Visual Studio編譯它。

最後,請務必添加DLIB_PNG_SUPPORT和DLIB_JPEG_SUPPORT作爲預處理器在項目設置中定義的值。

我也試圖使用cmake生成的解決方案,但是,由於某些原因它遇到了與png支持有關的麻煩。

相關問題