2017-04-15 5 views
0

우리는 poco (pocoproject.org) 라이브러리의 HTTP 서버 예제를 탐색 중입니다. Windows에서는 잘 돌아가지만 FreeBSD에서는 "지원되지 않는 주소 계열"문제가 발생합니다. https://github.com/toggl/toggldesktop/blob/master/third_party/poco/Net/samples/HTTPFormServer/src/HTTPFormServer.cppPoco 라이브러리에서 FreeBSD에서 "주소 패밀리가 지원되지 않음"문제 발생

어떤 제안을 우리가 문제를 해결할 수있는 방법 : FreeBSD의에 우리는이 샘플의 PKG의 마시고-1.7.8

소스를 통해 설치 파일의 동적 링크를 사용?

----- 업데이트 :

원본 샘플은 ipv4를 사용합니다. 다음과 같이 내가 IPv6를 소켓을 만들

같은 문제 :

 Poco::Net::SocketAddress addr("[fe80::a00:27ff:feb7:6b1a]:9980"); 

     if (addr.family() == static_cast<Poco::Net::IPAddress::Family>(Poco::Net::Impl::IPAddressImpl::IPv6)) { 
      std::cout << "Addr: ipv6 " << std::endl; 
     } 
     else if (addr.family() == static_cast<Poco::Net::IPAddress::Family>(Poco::Net::Impl::IPAddressImpl::IPv4)) { 
      std::cout << "Addr: ipv4 " << std::endl; 
     } 
     else { 
      std::cout << "Addr: something else (err)." << std::endl; 
     } 

     // set-up a server socket 
     ServerSocket svs(addr); 

출력

Addr: ipv6 
    Net Exception: Address family not supported 

답변

0

내가 마시고에 대해 아무것도 몰라,하지만 오류 메시지는의 IPv6 문제가 있음을 암시한다.

가능한 해결책 : FreeBSD의에

  • IPv6을 비활성화
  • 이 프로그램의 IPv6 인식

참조하십시오 또한이 관련 question

+0

의 IPv6적인 버전은 동일한 문제를 가지고 – Victor