2012-03-24 1 views
1

내 VC2011 프로젝트에 Boost.Regex를 사용하고 있고 최신 Boost.Regex가 정적이고 동적 인 라이브러리로 컴파일되었습니다.내 프로젝트를 boost :: regex with static으로 링크 컴파일

나는 정적 라이브러리 (boost_regex-vc110-MT-1_49.lib)를 연결하는 내 VC 프로젝트를 강요했지만,이 프로젝트는 컴파일 된 후이 실행될 때, 그것을보고 그 :

실종 boost_regex-vc110을-MT-1_49.dll 나는 비슷한 문제를 봤 누군가가 /D "BOOST_ALL_NO_LIB"를 사용하는 제안

, 나는이 시도하지만, 도움이되지 않습니다.

+0

전체 재 구축 (정리 및 빌드)을 수행 했습니까? – hmjd

+0

예, 했어요. 그러나 그것은 프로그램에 도움이되지 않습니다. 하지만 나는 boost :: random을 사용했기 때문에 한 가지를 알아 차렸다. 일단 정적 라이브러리 (boost_random-vc110-mt-1_49.lib)를 수동으로 링크하면 DLL을 실행하는 동안 DLL에 대해 묻지 않는다. – user1285419

답변

0

BOOST_ALL_NO_LIB을 정의하면 모든 부스트 종속성을 수동으로 지정해야합니다. 따라서 을 정적으로 연결하려면 BOOST_ALL_NO_LIB을 정의하고 모든 것을 수동으로 연결하십시오. 그렇지 않은 경우 스레드 인 경우 BOOST_REGEX_NO_LIB을 사용하고 Boost.Regex을 수동으로 연결하면됩니다.