I am trying to compile & run the ukf test in the following directory:
~/opencv_contrib/modules/tracking/test/test_ukf.cpp
when I try to compile it using ( g++ test_ukf.cpp ) command I get:
In file included from test_ukf.cpp:42:0: test_precomp.hpp:13:26: fatal error: opencv2/ts.hpp: No such file or directory compilation terminated.
Then I specify the include directory where ts.hpp exists using : g++ -o app -I/home/akde/opencv/modules/ts/include/ test_ukf.cpp But this time I get
In file included from test_precomp.hpp:13:0, from test_ukf.cpp:42: /home/akde/opencv/modules/ts/include/opencv2/ts.hpp:22:22:> fatal error: cvconfig.h: No such file> or directory compilation terminated.
Finally I searched for the cvconfig.h and found it in 2 places:
1-/home/akde/opencv/build/opencv2/cvconfig.h
2-/home/akde/opencv/build/cvconfig.h
I specified the locations and compiled using:
g++ -o app -I/home/akde/opencv/modules/ts/include/ -I/home/akde/opencv/build/opencv2 test_ukf.cpp
and
g++ -o app -I/home/akde/opencv/modules/ts/include/ -I/home/akde/opencv/build test_ukf.cpp
and
g++ test_ukf.cpp -o app "pkg-config --cflags --libs opencv" -I/home/akde/opencv/modules/ts/include/ -I/home/akde/opencv/build
This time I get a gigantic error:
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o: In function
_start': (.text+0x20): undefined reference to
main' /tmp/cc1Bc7jy.o: In functionUKF_br_landing_point_Test::TestBody()': test_ukf.cpp:(.text+0x29): undefined reference to
cv::utils::trace::details::Region::Region(cv::utils::trace::details::Region::LocationStaticStorage const&)' test_ukf.cpp:(.text+0x42): undefined reference tocv::ipp::setIppStatus(int, char const*, char const*, int)' test_ukf.cpp:(.text+0x47): undefined reference to
cv::theRNG()' test_ukf.cpp:(.text+0x51): undefined reference tocvtest::param_seed' test_ukf.cpp:(.text+0x70): undefined reference to
cvtest::checkIppStatus()' /tmp/cc1Bc7jy.o: In functionUKF_br_landing_point_Test::Body()': test_ukf.cpp:(.text+0x1cd): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x2cf): undefined reference tocv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x342): undefined reference to
cv::sqrt(cv::_InputArray const&, cv::_OutputArray const&)' test_ukf.cpp:(.text+0x381): undefined reference tocv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x414): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x487): undefined reference tocv::sqrt(cv::_InputArray const&, cv::_OutputArray const&)' test_ukf.cpp:(.text+0x5ef): undefined reference to
cv::Mat::eye(int, int, int)' test_ukf.cpp:(.text+0x621): undefined reference tocv::operator*(double, cv::MatExpr const&)' test_ukf.cpp:(.text+0x763): undefined reference to
cv::tracking::UnscentedKalmanFilterParams::UnscentedKalmanFilterParams(int, int, int, double, double, cv::Ptr<cv::tracking::ukfsystemmodel>, int)' test_ukf.cpp:(.text+0x8cc): undefined reference tocv::tracking::createUnscentedKalmanFilter(cv::tracking::UnscentedKalmanFilterParams const&)' test_ukf.cpp:(.text+0x910): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x9fc): undefined reference tocv::RNG::fill(cv::_InputOutputArray const&, int, cv::_InputArray const&, cv::_InputArray const&, bool)' test_ukf.cpp:(.text+0xa49): undefined reference to
cv::operator(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text+0xb1b): undefined reference tocv::RNG::fill(cv::_InputOutputArray const&, int, cv::_InputArray const&, cv::_InputArray const&, bool)' test_ukf.cpp:(.text+0xb68): undefined reference to
cv::operator(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text+0xc23): undefined reference tocv::noArray()' test_ukf.cpp:(.text+0xd45): undefined reference to
testing::internal::DoubleNearPredFormat(char const, char const, char const, double, double, double)' test_ukf.cpp:(.text+0xd6b): undefined reference totesting::Message::Message()' test_ukf.cpp:(.text+0xd9e): undefined reference to
testing::internal::AssertHelper::AssertHelper(testing::TestPartResult::Type, char const, int, char const)' test_ukf.cpp:(.text+0xdb7): undefined reference totesting::internal::AssertHelper::operator=(testing::Message const&) const' test_ukf.cpp:(.text+0xdc6): undefined reference to
testing::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x12ef): undefined reference totesting::internal::AssertHelper::~AssertHelper()' /tmp/cc1Bc7jy.o: In function
UKF_DISABLED_br_mean_squared_error_Test::TestBody()': test_ukf.cpp:(.text+0x148d): undefined reference tocv::utils::trace::details::Region::Region(cv::utils::trace::details::Region::LocationStaticStorage const&)' test_ukf.cpp:(.text+0x14a6): undefined reference to
cv::ipp::setIppStatus(int, char const, char const, int)' test_ukf.cpp:(.text+0x14ab): undefined reference tocv::theRNG()' test_ukf.cpp:(.text+0x14b5): undefined reference to
cvtest::param_seed' test_ukf.cpp:(.text+0x14d4): undefined reference tocvtest::checkIppStatus()' /tmp/cc1Bc7jy.o: In function
UKF_DISABLED_br_mean_squared_error_Test::Body()': test_ukf.cpp:(.text+0x1631): undefined reference tocv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x1733): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x17a6): undefined reference tocv::sqrt(cv::_InputArray const&, cv::_OutputArray const&)' test_ukf.cpp:(.text+0x17e5): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x1878): undefined reference tocv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x18eb): undefined reference to
cv::sqrt(cv::_InputArray const&, cv::_OutputArray const&)' test_ukf.cpp:(.text+0x1a6c): undefined reference tocv::Mat::eye(int, int, int)' test_ukf.cpp:(.text+0x1a9e): undefined reference to
cv::operator(double, cv::MatExpr const&)' test_ukf.cpp:(.text+0x1be0): undefined reference tocv::tracking::UnscentedKalmanFilterParams::UnscentedKalmanFilterParams(int, int, int, double, double, cv::Ptr<cv::tracking::UkfSystemModel>, int)' test_ukf.cpp:(.text+0x1d95): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x1ddf): undefined reference tocv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x1e37): undefined reference to
cv::tracking::createUnscentedKalmanFilter(cv::tracking::UnscentedKalmanFilterParams const&)' test_ukf.cpp:(.text+0x1f3c): undefined reference tocv::RNG::fill(cv::_InputOutputArray const&, int, cv::_InputArray const&, cv::_InputArray const&, bool)' test_ukf.cpp:(.text+0x1f89): undefined reference to
cv::operator(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text+0x205b): undefined reference tocv::RNG::fill(cv::_InputOutputArray const&, int, cv::_InputArray const&, cv::_InputArray const&, bool)' test_ukf.cpp:(.text+0x20a8): undefined reference to
cv::operator(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text+0x2163): undefined reference tocv::noArray()' test_ukf.cpp:(.text+0x2241): undefined reference to
cv::operator-(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text+0x2368): undefined reference tocv::operator/(cv::Mat const&, double)' test_ukf.cpp:(.text+0x23db): undefined reference to
cv::sqrt(cv::_InputArray const&, cv::_OutputArray const&)' test_ukf.cpp:(.text+0x23fe): undefined reference tocv::noArray()' test_ukf.cpp:(.text+0x244f): undefined reference to
cv::norm(cv::_InputArray const&, int, cv::_InputArray const&)' test_ukf.cpp:(.text+0x247e): undefined reference tocv::noArray()' test_ukf.cpp:(.text+0x24cf): undefined reference to
cv::norm(cv::_InputArray const&, int, cv::_InputArray const&)' test_ukf.cpp:(.text+0x24fe): undefined reference tocv::noArray()' test_ukf.cpp:(.text+0x254f): undefined reference to
cv::norm(cv::_InputArray const&, int, cv::_InputArray const&)' test_ukf.cpp:(.text+0x257e): undefined reference tocv::noArray()' test_ukf.cpp:(.text+0x25cf): undefined reference to
cv::norm(cv::_InputArray const&, int, cv::_InputArray const&)' test_ukf.cpp:(.text+0x264c): undefined reference totesting::Message::Message()' test_ukf.cpp:(.text+0x267f): undefined reference to
testing::internal::AssertHelper::AssertHelper(testing::TestPartResult::Type, char const, int, char const)' test_ukf.cpp:(.text+0x2698): undefined reference totesting::internal::AssertHelper::operator=(testing::Message const&) const' test_ukf.cpp:(.text+0x26a7): undefined reference to
testing::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x2736): undefined reference totesting::Message::Message()' test_ukf.cpp:(.text+0x2769): undefined reference to
testing::internal::AssertHelper::AssertHelper(testing::TestPartResult::Type, char const, int, char const)' test_ukf.cpp:(.text+0x2782): undefined reference totesting::internal::AssertHelper::operator=(testing::Message const&) const' test_ukf.cpp:(.text+0x2791): undefined reference to
testing::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x2820): undefined reference totesting::Message::Message()' test_ukf.cpp:(.text+0x2853): undefined reference to
testing::internal::AssertHelper::AssertHelper(testing::TestPartResult::Type, char const, int, char const)' test_ukf.cpp:(.text+0x286c): undefined reference totesting::internal::AssertHelper::operator=(testing::Message const&) const' test_ukf.cpp:(.text+0x287b): undefined reference to
testing::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x290a): undefined reference totesting::Message::Message()' test_ukf.cpp:(.text+0x293d): undefined reference to
testing::internal::AssertHelper::AssertHelper(testing::TestPartResult::Type, char const, int, char const)' test_ukf.cpp:(.text+0x2956): undefined reference totesting::internal::AssertHelper::operator=(testing::Message const&) const' test_ukf.cpp:(.text+0x2965): undefined reference to
testing::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x303d): undefined reference totesting::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x307c): undefined reference to
testing::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x30b8): undefined reference totesting::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x30f4): undefined reference to
testing::internal::AssertHelper::~AssertHelper()' /tmp/cc1Bc7jy.o: In functionUKF_DISABLED_ungm_mean_squared_error_Test::TestBody()': test_ukf.cpp:(.text+0x32b9): undefined reference to
cv::utils::trace::details::Region::Region(cv::utils::trace::details::Region::LocationStaticStorage const&)' test_ukf.cpp:(.text+0x32d2): undefined reference tocv::ipp::setIppStatus(int, char const*, char const*, int)' test_ukf.cpp:(.text+0x32d7): undefined reference to
cv::theRNG()' test_ukf.cpp:(.text+0x32e1): undefined reference tocvtest::param_seed' test_ukf.cpp:(.text+0x3300): undefined reference to
cvtest::checkIppStatus()' /tmp/cc1Bc7jy.o: In functionUKF_DISABLED_ungm_mean_squared_error_Test::Body()': test_ukf.cpp:(.text+0x34a8): undefined reference to
cv::tracking::UnscentedKalmanFilterParams::UnscentedKalmanFilterParams(int, int, int, double, double, cv::Ptr<cv::tracking::ukfsystemmodel>, int)' test_ukf.cpp:(.text+0x34d8): undefined reference tocv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x3546): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x35b9): undefined reference tocv::sqrt(cv::_InputArray const&, cv::_OutputArray const&)' test_ukf.cpp:(.text+0x35f8): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x3666): undefined reference tocv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x36d9): undefined reference to
cv::sqrt(cv::_InputArray const&, cv::_OutputArray const&)' test_ukf.cpp:(.text+0x3718): undefined reference tocv::Mat::eye(int, int, int)' test_ukf.cpp:(.text+0x3978): undefined reference to
cv::Mat::zeros(int, int, int)' test_ukf.cpp:(.text+0x39f3): undefined reference tocv::tracking::createUnscentedKalmanFilter(cv::tracking::UnscentedKalmanFilterParams const&)' test_ukf.cpp:(.text+0x3ae8): undefined reference to
cv::RNG::fill(cv::_InputOutputArray const&, int, cv::_InputArray const&, cv::_InputArray const&, bool)' test_ukf.cpp:(.text+0x3bbf): undefined reference tocv::RNG::fill(cv::_InputOutputArray const&, int, cv::_InputArray const&, cv::_InputArray const&, bool)' test_ukf.cpp:(.text+0x3c0c): undefined reference to
cv::operator(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text+0x3c54): undefined reference tocv::operator*(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text+0x3f81): undefined reference to
testing::Message::Message()' test_ukf.cpp:(.text+0x3fb4): undefined reference totesting::internal::AssertHelper::AssertHelper(testing::TestPartResult::Type, char const*, int, char const*)' test_ukf.cpp:(.text+0x3fcd): undefined reference to
testing::internal::AssertHelper::operator=(testing::Message const&) const' test_ukf.cpp:(.text+0x3fdc): undefined reference totesting::internal::AssertHelper::~AssertHelper()' test_ukf.cpp:(.text+0x44d2): undefined reference to
testing::internal::AssertHelper::~AssertHelper()' /tmp/cc1Bc7jy.o: In function__static_initialization_and_destruction_0(int, int)': test_ukf.cpp:(.text+0x5142): undefined reference to
testing::internal::GetTestTypeId()' test_ukf.cpp:(.text+0x51b0): undefined reference totesting::internal::MakeAndRegisterTestInfo(char const*, char const*, char const*, char const*, testing::internal::CodeLocation, void const*, void (*)(), void (*)(), testing::internal::TestFactoryBase*)' test_ukf.cpp:(.text+0x51f9): undefined reference to
testing::internal::GetTestTypeId()' test_ukf.cpp:(.text+0x5267): undefined reference totesting::internal::MakeAndRegisterTestInfo(char const*, char const*, char const*, char const*, testing::internal::CodeLocation, void const*, void (*)(), void (*)(), testing::internal::TestFactoryBase*)' test_ukf.cpp:(.text+0x52b0): undefined reference to
testing::internal::GetTestTypeId()' test_ukf.cpp:(.text+0x531e): undefined reference totesting::internal::MakeAndRegisterTestInfo(char const*, char const*, char const*, char const*, testing::internal::CodeLocation, void const*, void (*)(), void (*)(), testing::internal::TestFactoryBase*)' /tmp/cc1Bc7jy.o: In function
testing::internal::scoped_ptr<perf::(anonymous namespace)::matdepth="" const="">::reset(perf::(anonymous namespace)::MatDepth const)': test_ukf.cpp:(.text+0x579c): undefined reference totesting::internal::IsTrue(bool)' /tmp/cc1Bc7jy.o: In function
testing::internal::ValuesInIteratorRangeGenerator<perf::(anonymous namespace)::matdepth="">::Iterator::Equals(testing::internal::ParamIteratorInterface<perf::(anonymous namespace)::matdepth=""> const&) const': test_ukf.cpp:(.text+0x59bb): undefined reference totesting::internal::IsTrue(bool)' test_ukf.cpp:(.text+0x59da): undefined reference to
testing::internal::GTestLog::GTestLog(testing::internal::GTestLogSeverity, char const, int)' test_ukf.cpp:(.text+0x5a26): undefined reference totesting::internal::GTestLog::~GTestLog()' test_ukf.cpp:(.text+0x5a69): undefined reference to
testing::internal::GTestLog::~GTestLog()' /tmp/cc1Bc7jy.o: In functiontesting::internal::ValuesInIteratorRangeGenerator<perf::(anonymous namespace)::MatDepth>::Iterator const* testing::internal::CheckedDowncastToActualType<testing::internal::ValuesInIteratorRangeGenerator<perf::(anonymous namespace)::MatDepth>::Iterator const, testing::internal::ParamIteratorInterface<perf::(anonymous namespace)::MatDepth> const>(testing::internal::ParamIteratorInterface<perf::(anonymous namespace)::MatDepth> const*)': test_ukf.cpp:(.text+0x5b66): undefined reference to
testing::internal::IsTrue(bool)' test_ukf.cpp:(.text+0x5b8c): undefined reference totesting::internal::GTestLog::GTestLog(testing::internal::GTestLogSeverity, char const*, int)' test_ukf.cpp:(.text+0x5bb1): undefined reference to
testing::internal::GTestLog::~GTestLog()' test_ukf.cpp:(.text+0x5bf8): undefined reference totesting::internal::GTestLog::~GTestLog()' /tmp/cc1Bc7jy.o: In function
cv::Mat::~Mat()': test_ukf.cpp:(.text._ZN2cv3MatD2Ev[_ZN2cv3MatD5Ev]+0x39): undefined reference tocv::fastFree(void*)' /tmp/cc1Bc7jy.o: In function
cv::Mat::operator=(cv::Mat const&)': test_ukf.cpp:(.text._ZN2cv3MataSERKS0_[_ZN2cv3MataSERKS0_]+0x115): undefined reference tocv::Mat::copySize(cv::Mat const&)' /tmp/cc1Bc7jy.o: In function
cv::Mat::col(int) const': test_ukf.cpp:(.text._ZNK2cv3Mat3colEi[_ZNK2cv3Mat3colEi]+0x56): undefined reference tocv::Mat::Mat(cv::Mat const&, cv::Range const&, cv::Range const&)' /tmp/cc1Bc7jy.o: In function
cv::Mat::clone() const': test_ukf.cpp:(.text._ZNK2cv3Mat5cloneEv[_ZNK2cv3Mat5cloneEv]+0x4e): undefined reference tocv::Mat::copyTo(cv::_OutputArray const&) const' /tmp/cc1Bc7jy.o: In function
cv::Mat::create(int, int, int)': test_ukf.cpp:(.text._ZN2cv3Mat6createEiii[_ZN2cv3Mat6createEiii]+0x9d): undefined reference tocv::Mat::create(int, int const*, int)' /tmp/cc1Bc7jy.o: In function
cv::Mat::release()': test_ukf.cpp:(.text._ZN2cv3Mat7releaseEv[_ZN2cv3Mat7releaseEv]+0x4b): undefined reference tocv::Mat::deallocate()' /tmp/cc1Bc7jy.o: In function
cv::utils::trace::details::Region::~Region()': test_ukf.cpp:(.text._ZN2cv5utils5trace7details6RegionD2Ev[_ZN2cv5utils5trace7details6RegionD5Ev]+0x1f): undefined reference tocv::utils::trace::details::Region::destroy()' /tmp/cc1Bc7jy.o: In function
testing::AssertionResult::AppendMessage(testing::Message const&)': test_ukf.cpp:(.text._ZN7testing15AssertionResult13AppendMessageERKNS_7MessageE[_ZN7testing15AssertionResult13AppendMessageERKNS_7MessageE]+0x73): undefined reference totesting::Message::GetString[abi:cxx11]() const' /tmp/cc1Bc7jy.o: In function
BallisticModel::stateConversionFunction(cv::Mat const&, cv::Mat const&, cv::Mat const&, cv::Mat&)': test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x8a): undefined reference tocv::operator*(double, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x143): undefined reference to
cv::operator+(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x1a7): undefined reference tocv::operator*(double, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x1c7): undefined reference to
cv::operator+(cv::Mat const&, cv::MatExpr const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x23e): undefined reference tocv::operator+(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x2a2): undefined reference to
cv::operator(double, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x2c2): undefined reference tocv::operator+(cv::Mat const&, cv::MatExpr const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x339): undefined reference to
cv::operator+(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x3a2): undefined reference tocv::operator*(double, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x3c2): undefined reference to
cv::operator+(cv::Mat const&, cv::MatExpr const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x439): undefined reference tocv::operator+(cv::Mat const&, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x4a2): undefined reference to
cv::operator(double, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x4d4): undefined reference tocv::operator*(double, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x4f4): undefined reference to
cv::operator+(cv::Mat const&, cv::MatExpr const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x514): undefined reference tocv::operator+(cv::MatExpr const&, cv::MatExpr const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x534): undefined reference to
cv::operator+(cv::MatExpr const&, cv::Mat const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x561): undefined reference tocv::operator*(double, cv::MatExpr const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x581): undefined reference to
cv::operator+(cv::Mat const&, cv::MatExpr const&)' test_ukf.cpp:(.text._ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_[_ZN14BallisticModel23stateConversionFunctionERKN2cv3MatES3_S3_RS1_]+0x5a1): undefined reference tocv::operator+(cv::MatExpr const&, cv::Mat const&)' /tmp/cc1Bc7jy.o: In function
UKF_br_landing_point_Test::UKF_br_landing_point_Test()': test_ukf.cpp:(.text._ZN25UKF_br_landing_point_TestC2Ev[_ZN25UKF_br_landing_point_TestC5Ev]+0x14): undefined reference totesting::Test::Test()' /tmp/cc1Bc7jy.o: In function
UKF_DISABLED_br_mean_squared_error_Test::UKF_DISABLED_br_mean_squared_error_Test()': test_ukf.cpp:(.text._ZN39UKF_DISABLED_br_mean_squared_error_TestC2Ev[_ZN39UKF_DISABLED_br_mean_squared_error_TestC5Ev]+0x14): undefined reference totesting::Test::Test()' /tmp/cc1Bc7jy.o: In function
UKF_DISABLED_ungm_mean_squared_error_Test::UKF_DISABLED_ungm_mean_squared_error_Test()': test_ukf.cpp:(.text._ZN41UKF_DISABLED_ungm_mean_squared_error_TestC2Ev[_ZN41UKF_DISABLED_ungm_mean_squared_error_TestC5Ev]+0x14): undefined reference totesting::Test::Test()' /tmp/cc1Bc7jy.o: In function
testing::internal::scoped_ptr<std::__cxx11::basic_string<char, std::char_traits<char="">, std::allocator<char> > >::reset(std::__cxx11::basic_string<char, std::char_traits<char="">, std::allocator<char> >)': test_ukf.cpp:(.text._ZN7testing8internal10scoped_ptrINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE5resetEPS7_[_ZN7testing8internal10scoped_ptrINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE5resetEPS7_]+0x29): undefined reference totesting::internal::IsTrue(bool)' /tmp/cc1Bc7jy.o: In function
testing::AssertionResult testing::internal::CmpHelperGE<double, double="">(char const, char const, double const&, double const&)': test_ukf.cpp:(.text._ZN7testing8internal11CmpHelperGEIddEENS_15AssertionResultEPKcS4_RKT_RKT0_[_ZN7testing8internal11CmpHelperGEIddEENS_15AssertionResultEPKcS4_RKT_RKT0_]+0x49): undefined reference totesting::AssertionSuccess()' /tmp/cc1Bc7jy.o: In function
testing::internal::scoped_ptr<std::__cxx11::basic_stringstream<char, std::char_traits<char="">, std::allocator<char> > >::reset(std::__cxx11::basic_stringstream<char, std::char_traits<char="">, std::allocator<char> >)': test_ukf.cpp:(.text._ZN7testing8internal10scoped_ptrINSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEEE5resetEPS7_[_ZN7testing8internal10scoped_ptrINSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEEE5resetEPS7_]+0x28): undefined reference totesting::internal::IsTrue(bool)' /tmp/cc1Bc7jy.o: In function
testing::AssertionResult testing::internal::CmpHelperOpFailure<double, double="">(char const, char const, double const&, double const&, char const)': test_ukf.cpp:(.text._ZN7testing8internal18CmpHelperOpFailureIddEENS_15AssertionResultEPKcS4_RKT_RKT0_S4_[_ZN7testing8internal18CmpHelperOpFailureIddEENS_15AssertionResultEPKcS4_RKT_RKT0_S4_]+0x81): undefined reference totesting::AssertionFailure()' test_ukf.cpp:(.text._ZN7testing8internal18CmpHelperOpFailureIddEENS_15AssertionResultEPKcS4_RKT_RKT0_S4_[_ZN7testing8internal18CmpHelperOpFailureIddEENS_15AssertionResultEPKcS4_RKT_RKT0_S4_]+0x138): undefined reference to
testing::AssertionResult::AssertionResult(testing::AssertionResult const&)' /tmp/cc1Bc7jy.o: In functiontesting::AssertionResult& testing::AssertionResult::operator<< <char [12]>(char const (&) [12])': test_ukf.cpp:(.text._ZN7testing15AssertionResultlsIA12_cEERS0_RKT_[_ZN7testing15AssertionResultlsIA12_cEERS0_RKT_]+0x28): undefined reference to
testing::Message::Message()' /tmp/cc1Bc7jy.o: In functiontesting::AssertionResult& testing::AssertionResult::operator<< <char const*>(char const* const&)': test_ukf.cpp:(.text._ZN7testing15AssertionResultlsIPKcEERS0_RKT_[_ZN7testing15AssertionResultlsIPKcEERS0_RKT_]+0x28): undefined reference to
testing::Message::Message()' /tmp/cc1Bc7jy.o: In functiontesting::AssertionResult& testing::AssertionResult::operator<< <char [3]>(char const (&) [3])': test_ukf.cpp:(.text._ZN7testing15AssertionResultlsIA3_cEERS0_RKT_[_ZN7testing15AssertionResultlsIA3_cEERS0_RKT_]+0x28): undefined reference to
testing::Message::Message()' /tmp/cc1Bc7jy.o: In functiontesting::AssertionResult& testing::AssertionResult::operator<< <std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': test_ukf.cpp:(.text._ZN7testing15AssertionResultlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_[_ZN7testing15AssertionResultlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_]+0x28): undefined reference to
testing::Message::Message()' /tmp/cc1Bc7jy.o: In functiontesting::AssertionResult& testing::AssertionResult::operator<< <char [5]>(char const (&) [5])': test_ukf.cpp:(.text._ZN7testing15AssertionResultlsIA5_cEERS0_RKT_[_ZN7testing15AssertionResultlsIA5_cEERS0_RKT_]+0x28): undefined reference to
testing::Message::Message()' /tmp/cc1Bc7jy.o:(.rodata._ZTV41UKF_DISABLED_ungm_mean_squared_error_Test[_ZTV41UKF_DISABLED_ungm_mean_squared_error_Test]+0x20): undefined reference totesting::Test::SetUp()' /tmp/cc1Bc7jy.o:(.rodata._ZTV41UKF_DISABLED_ungm_mean_squared_error_Test[_ZTV41UKF_DISABLED_ungm_mean_squared_error_Test]+0x28): undefined reference to
testing::Test::TearDown()' /tmp/cc1Bc7jy.o: In functionUKF_DISABLED_ungm_mean_squared_error_Test::~UKF_DISABLED_ungm_mean_squared_error_Test()': test_ukf.cpp:(.text._ZN41UKF_DISABLED_ungm_mean_squared_error_TestD2Ev[_ZN41UKF_DISABLED_ungm_mean_squared_error_TestD5Ev]+0x20): undefined reference to
testing::Test::~Test()' /tmp/cc1Bc7jy.o:(.rodata._ZTV39UKF_DISABLED_br_mean_squared_error_Test[_ZTV39UKF_DISABLED_br_mean_squared_error_Test]+0x20): undefined reference totesting::Test::SetUp()' /tmp/cc1Bc7jy.o:(.rodata._ZTV39UKF_DISABLED_br_mean_squared_error_Test[_ZTV39UKF_DISABLED_br_mean_squared_error_Test]+0x28): undefined reference to
testing::Test::TearDown()' /tmp/cc1Bc7jy.o: In functionUKF_DISABLED_br_mean_squared_error_Test::~UKF_DISABLED_br_mean_squared_error_Test()': test_ukf.cpp:(.text._ZN39UKF_DISABLED_br_mean_squared_error_TestD2Ev[_ZN39UKF_DISABLED_br_mean_squared_error_TestD5Ev]+0x20): undefined reference to
testing::Test::~Test()' /tmp/cc1Bc7jy.o:(.rodata._ZTV25UKF_br_landing_point_Test[_ZTV25UKF_br_landing_point_Test]+0x20): undefined reference totesting::Test::SetUp()' /tmp/cc1Bc7jy.o:(.rodata._ZTV25UKF_br_landing_point_Test[_ZTV25UKF_br_landing_point_Test]+0x28): undefined reference to
testing::Test::TearDown()' /tmp/cc1Bc7jy.o: In functionUKF_br_landing_point_Test::~UKF_br_landing_point_Test()': test_ukf.cpp:(.text._ZN25UKF_br_landing_point_TestD2Ev[_ZN25UKF_br_landing_point_TestD5Ev]+0x20): undefined reference to
testing::Test::~Test()' /tmp/cc1Bc7jy.o:(.rodata._ZTI41UKF_DISABLED_ungm_mean_squared_error_Test[_ZTI41UKF_DISABLED_ungm_mean_squared_error_Test]+0x10): undefined reference totypeinfo for testing::Test' /tmp/cc1Bc7jy.o:(.rodata._ZTI39UKF_DISABLED_br_mean_squared_error_Test[_ZTI39UKF_DISABLED_br_mean_squared_error_Test]+0x10): undefined reference to
typeinfo for testing::Test' /tmp/cc1Bc7jy.o:(.rodata._ZTI25UKF_br_landing_point_Test[_ZTI25UKF_br_landing_point_Test]+0x10): undefined reference totypeinfo for testing::Test' /tmp/cc1Bc7jy.o:(.rodata._ZTIN6cvtest17SkipTestExceptionE[_ZTIN6cvtest17SkipTestExceptionE]+0x10): undefined reference to
typeinfo for cv::Exception' collect2: error: ld returned 1 exit status
So what is the problem and what should I do to run test_ukf.cpp?
PS: I can run basic .cpp programs which uses cv::KalmanFilter like in here https://docs.opencv.org/3.3.1/d1/da2/kalman_8cpp-example.htmllink text