Boost.Test를 사용할 때 일반적으로 main()
함수를 정의 할 필요가 없습니다. Boost.Test가 자체를 제공하기 때문입니다.링커가 Boost.Test를 사용하여 "wrong"main을 선택했습니다.
최근에 타사 라이브러리 (VS2010)의 정적 링크를 사용하도록 프로젝트를 변환해야했습니다. 당연히 빌드에 연결하여 빌드가 성공하고 빌드가 정상적으로 실행되어야했습니다.
그러나 테스트 프로젝트를 실행하면 정말 이상한 일이 발생했습니다. 내 종속 라이브러리 중 하나가 필요로하는 제 3 자 .lib
(libpng) 중 하나가 main()
함수가 정의 된 테스트 파일을 포함하고있는 것으로 보입니다 (pngtest.c
).
내 프로젝트에 main()
함수가 없으므로 링커에서 해당 "테스트"응용 프로그램을 선택했습니다. 따라서, 내 테스트는 실행되지 않습니다.
내가 이런 일이 발생하지 않도록하는 방법을 아는 사람이 있습니까? 부스터를 사용하도록 링커/컴파일러에게 어떻게 말합니까? main()
?