ICC 14.0.1 컴파일러가 포함 된 시험판 버전의 Intel ComposerXE 2013을 설치했습니다. 내 테스트 프로그램은 다음입니다 :-I 플래그 (포함 디렉토리)가 컴파일을 중단시키는 이유는 무엇입니까? (인텔 컴파일러 사용)
#include <boost/graph/adjacency_list.hpp>
#include <iostream>
typedef boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS> UndirectedGraph;
int main() {
UndirectedGraph G(10);
return 0;
}
내가
In file included from /home/boost_1_55_0/boost/functional/hash/hash.hpp(540),
from /home/boost_1_55_0/boost/functional/hash.hpp(6),
from /home/boost_1_55_0/boost/unordered/unordered_set.hpp(20),
from /home/boost_1_55_0/boost/unordered_set.hpp(16),
from /home/boost_1_55_0/boost/graph/adjacency_list.hpp(21),
from test.cpp(1):
/home/boost_1_55_0/boost/functional/hash/extensions.hpp(67): error: "hash_value" is not a function or static data member
std::size_t hash_value(std::complex<T> const&);
^
In file included from /home/boost_1_55_0/boost/functional/hash/hash.hpp(540),
from /home/boost_1_55_0/boost/functional/hash.hpp(6),
from /home/boost_1_55_0/boost/unordered/unordered_set.hpp(20),
from /home/boost_1_55_0/boost/unordered_set.hpp(16),
from /home/boost_1_55_0/boost/graph/adjacency_list.hpp(21),
from test.cpp(1):
/home/boost_1_55_0/boost/functional/hash/extensions.hpp(121): error: "hash_value" is not a function or static data member
std::size_t hash_value(std::complex<T> const& v)
^
In file included from /home/boost_1_55_0/boost/functional/hash/hash.hpp(540),
from /home/boost_1_55_0/boost/functional/hash.hpp(6),
from /home/boost_1_55_0/boost/unordered/unordered_set.hpp(20),
from /home/boost_1_55_0/boost/unordered_set.hpp(16),
from /home/boost_1_55_0/boost/graph/adjacency_list.hpp(21),
from test.cpp(1):
/home/boost_1_55_0/boost/functional/hash/extensions.hpp(277): warning #12: parsing restarts here after previous syntax error
};
^
In file included from /home/boost_1_55_0/boost/type_traits.hpp(49),
from /home/boost_1_55_0/boost/pending/property.hpp(13),
from /home/boost_1_55_0/boost/graph/graph_traits.hpp(27),
from /home/boost_1_55_0/boost/graph/adjacency_list.hpp(33),
from test.cpp(1):
/home/boost_1_55_0/boost/type_traits/is_complex.hpp(23): error #303: explicit type is missing ("int" assumed)
is_convertible_from_tester(const std::complex<T>&);
^
In file included from /home/boost_1_55_0/boost/type_traits.hpp(49),
from /home/boost_1_55_0/boost/pending/property.hpp(13),
from /home/boost_1_55_0/boost/graph/graph_traits.hpp(27),
from /home/boost_1_55_0/boost/graph/adjacency_list.hpp(33),
from test.cpp(1):
/home/boost_1_55_0/boost/type_traits/is_complex.hpp(23): error: qualified name is not allowed
is_convertible_from_tester(const std::complex<T>&);
^
In file included from /home/boost_1_55_0/boost/type_traits.hpp(49),
from /home/boost_1_55_0/boost/pending/property.hpp(13),
from /home/boost_1_55_0/boost/graph/graph_traits.hpp(27),
from /home/boost_1_55_0/boost/graph/adjacency_list.hpp(33),
from test.cpp(1):
/home/boost_1_55_0/boost/type_traits/is_complex.hpp(23): error: expected a ")"
is_convertible_from_tester(const std::complex<T>&);
^
In file included from /home/boost_1_55_0/boost/type_traits.hpp(49),
from /home/boost_1_55_0/boost/pending/property.hpp(13),
from /home/boost_1_55_0/boost/graph/graph_traits.hpp(27),
from /home/boost_1_55_0/boost/graph/adjacency_list.hpp(33),
from test.cpp(1):
/home/boost_1_55_0/boost/type_traits/is_complex.hpp(22): warning #488: template parameter "T" is not used in declaring the parameter types of function template "boost::detail::is_convertible_from_tester::is_convertible_from_tester"
template <class T>
^
이제
/home/intel/bin/icpc //binary
-L/home/intel/composerxe/lib/intel64 //lib path
-I/home/intel/composerxe/include //include path for ICPC
-I/home/boost_1_55_0 //boost path
-std=c++11 test.cpp // c++11 flags
내가 BOOST
HASH.hpp
및
type_traits.hpp
파일을 아래의 오류가 다음과 같이 인텔 컴파일러 플래그를 사용하여 코드를 컴파일 I ICPC INCLUDE PATH없이 이것을 사용하여 컴파일
/home/intel/bin/icpc //binary
-L/home/intel/composerxe/lib/intel64 //lib path
//removed the ICPC INCLUDE PATH HERE
-I/home/boost_1_55_0 //boost path
-std=c++11 test.cpp // c++11 flags
그리고이 것은 0으로 오류없이 컴파일됩니다.
왜 이런 일이 발생합니까?
내 LD_LIBRARY_PATH
및 PATH
변수가 null입니다. 경로가 설정된 GCC 또는 기타 컴파일러가 없습니다. 컴파일하는 동안 모든 경로를 제공하고 있습니다.
당신, 혹시, 아래에 설치 부스트 버전을하지 않음 '/ 홈/인텔/작곡가/포함'? – rodrigo