2012-12-14 3 views
4

QNX 플랫폼에서 부스트 라이브러리를 처음 사용했습니다. asio 라이브러리를 연결하는 데 문제가 있습니다. 그것은 boost::asio::detail::socket_ops 수준에 정의되지 않은 참조 링커 오류를 throw합니다. 메시지는 다음과 같습니다boost :: asio QNX 링커 오류

기능 boost::asio::detail::socket_ops::call_bind 바인딩 정의되지 않은 참조에

..

listen에 대한

& 유사한 오류, recvmsg, accept, setsockopt ..

내가 이러한 오류가 나는 ASIO 라이브러리에만 포함되었다 헤더 라이브러리 (별도로 컴파일하지 않았다).

그런 다음 BOOST_ASIO_SEPARATE_COMPILATION을 정의하고 <boost/asio/ssl/impl/src.hpp>을 한 번 명시 적으로 포함하여 라이브러리를 컴파일하려고했습니다. socket_ops.hpp에 정의 된 함수에 더 많은 정의되지 않은 참조 오류를 던졌습니다.

오류는 socket_ops.ipp에서 발생하고 6.50

답변

0

당신이 당신의 플랫폼에 대한 후원을 구축 나는 QNX 중성미자 Momentics에 boost_1_49을 사용하고? 응용 프로그램 타겟과 호환되는 구성입니까?

Asio는 사용하기 전에 작성해야하는 몇 가지 다른 부스트 라이브러리 (date_time과 threading 중 하나를 필요로 함)가 필요합니다. 일부 라이브러리는 헤더 만 아니거나 헤더 만있는 라이브러리에 종속적입니다.

+0

리눅스 에서처럼 컴파일 옵션 -lsocket 옵션을 주면 문제가 해결됩니다. 답변 해주셔서 감사합니다. – memduha

관련 문제