오브젝트 파일을 연결하려고하는데 Codelite IDE에서 UnitTest ++를 사용하여 테스트를 작성할 수 있습니다. 신비하게도 tutorial은 (다른) 프로젝트의 파일 .o
을 사용하는 방법을 말하지 않습니다.테스트에서 프로젝트의 오브젝트 파일을 링크 할 때 문제가 발생했습니다.
명령 줄을 사용하는 경우 this thread이 어떻게 수행하는지 보여줍니다. 그러나 Codelite 편집기에서 더 많은 어려움을 겪고 있습니다. this other thread에서 허용되는 대답은 "[i] n codelite의 IDE입니다. 링커의 옵션 텍스트 상자에 추가되었습니다."그러나 나는 그런 경우가 아니라고 생각합니다.
이 .o
파일의 경로를 Library Search Path
지점에 추가 한 다음이 바로 아래 Libraries
개의 개별 파일 이름을 추가합니다. 이렇게하면 /usr/bin/ld: cannot find -l<stuff>
오류가 발생합니다. Library
지점에있는 특정 파일의 이름을 생략하면 undefined reference to
오류가 발생합니다.
이 문제를 해결하기 위해 원본 프로젝트를 라이브러리로 컴파일해야합니까? 아니면 내가 볼 수없는 해결책이 있습니까? 내가 실행할 my_class_test.cpp
파일은 다음과 같은 :
#include <UnitTest++/UnitTest++.h>
#include "my_class.h"
SUITE(MyClassTest)
{
class MCFixture
{
public:
MyClass me;
MCFixture() : me("a", "b", "c") {};
};
TEST_FIXTURE(MCFixture, ConstructorTest)
{
CHECK_EQUAL(1.0, 1.0);
}
} //SUITE(MyClassTest)