Asio의 boostless 버전을 사용하는 교차 플랫폼 프로젝트가 있습니다. OSX에 나는 다음 내 프로젝트에 포함 라이브러리를 구축 할 autotools를를 사용 : 나는 Windows 용 및시 지침을 찾을 수 없습니다Windows에서 Asio가있는 이상한 오류가 발생했습니다.
exec_program(COMMAND "./autogen.sh" WORKING_DIRECTORY ${asio_SOURCE_DIR}/asio)
exec_program(COMMAND "./configure --without-boost" WORKING_DIRECTORY ${asio_SOURCE_DIR}/asio)
CMake가하는 Asio 그래서 비주얼 스튜디오 파일을 생성 할 내가 위의 지시에 울타리 것을 통지 실행 Unix 플랫폼에서만 실행됩니다.
하지만 지금은 Windows에서 이상한 오류를 받고 있어요 :
asio\include\generic\basic_endpoint.hpp(71): error c2039: 'protocol' is not a member of 'std::basic_string<chr, std::char_traits<<char>, std::allocation<char>>'
나는 또한 내가 asio::generic::stream_protocol::endpoint
로 변경했다 asio::local::stream_protocol::endpoint
의 인스턴스를했다.
이 코드는 모두 OSX에서 완벽하게 컴파일되고 실행되었습니다.
어떤 일이 벌어지고 있는지 알 수 있습니까?
MCVE를 작성하십시오. http://stackoverflow.com/help/mcve –
Linux에서'-pedantic' 플래그를 사용해보십시오. 이렇게하면 C++ 표준에 엄격하게 적용되며 gcc의 허용 오차로 인한 것인지 여부를 알 수 있습니다. –
@ TheQuantumPhysicist 나는 이미 OSX에서 그 깃발을 가지고있다. GCC4.8은 문제없이 코드를 컴파일합니다. – ruipacheco