2014-06-07 2 views
4

각 라이브러리를 개별적으로 포함 할 수 있지만 동시에 포함 시키려고하면 많은 오류가 발생합니다. 나는 Boost v1_55_0과 Eigen v3.2.1을 사용하고 있습니다. 문제가 무엇인지 알 수 있습니까? 나는 아래 오류의 처음 몇을 붙여있어Eigen과 boost/regex를 동시에 사용할 수 없습니다.

#include <boost/regex.hpp> 
#include <Eigen> 

, 그 중 100 이상있다 :

내는 다음과 같이 포함되어 있습니다.

Error 1 error C1189: #error : The Eigen/Array header does no longer exist in Eigen3. All that functionality has moved to Eigen/Core. c:\local\eigen\array 8 1 Project1 
2 IntelliSense: #error directive: The Eigen/Array header does no longer exist in Eigen3. All that functionality has moved to Eigen/Core. c:\local\Eigen\Array 8 4 Project1 
3 IntelliSense: expected a declaration c:\local\boost_1_55_0\boost\functional\hash\extensions.hpp 160 13 Project1 
4 IntelliSense: expected a declaration c:\local\boost_1_55_0\boost\functional\hash\extensions.hpp 162 5 Project1 
5 IntelliSense: expected a declaration c:\local\boost_1_55_0\boost\functional\hash\extensions.hpp 377 1 Project1 
6 IntelliSense: expected a declaration c:\local\boost_1_55_0\boost\regex\v4\basic_regex.hpp 59 7 Project1 
7 IntelliSense: expected a declaration c:\local\boost_1_55_0\boost\regex\v4\basic_regex.hpp 100 7 Project1 
8 IntelliSense: identifier "name" is undefined c:\local\boost_1_55_0\boost\regex\v4\basic_regex.hpp 108 24 Project1 
9 IntelliSense: explicit type is missing ('int' assumed) c:\local\boost_1_55_0\boost\regex\v4\basic_regex.hpp 111 4 Project1 
10 IntelliSense: a type qualifier is not allowed on a nonmember function c:\local\boost_1_55_0\boost\regex\v4\basic_regex.hpp 136 21 Project1 
11 IntelliSense: a type qualifier is not allowed on a nonmember function c:\local\boost_1_55_0\boost\regex\v4\basic_regex.hpp 146 33 Project1 
12 IntelliSense: expected a declaration c:\local\boost_1_55_0\boost\regex\v4\basic_regex.hpp 151 1 Project1 
13 IntelliSense: expected a declaration c:\local\boost_1_55_0\boost\regex\v4\basic_regex.hpp 153 1 Project1 
+0

나는 특별히 말할 수는 없지만, 기본적으로 당신은 boost 정규식과 고유 모두를위한 디렉토리를 포함하도록 프로젝트를 설정했고, 똑같은 이름의 파일을 가지고 있기 때문에 혼란스러워진다. 나는 생각한다. – David

+0

포함 대상은 무엇입니까? –

+0

나는 그것들을 질문에 넣었다. – Silvester

답변

5

부스트는 C++ 11 std::array 헤더 array 포함되어 있지만 경로가 아이겐에서 Array 헤더 (분명히 폐기)를 따기 등이 있습니다. 대/소문자를 구분하지 않는 파일 시스템에 있어야합니다.

아이겐 헤더를 포함하는 적절한 방법이라고 나타납니다

#include <Eigen/Eigen> 

이 예제 Getting Started sample를 참조하십시오. Eigen/ 디렉터리를 포함 경로에 넣는 대신 Eigen/ 헤더 디렉터리가있는 디렉터리를 사용하도록 포함 경로를 수정해야합니다.

관련 문제