如何在我的项目中解决“未定义的函数引用”错误?

时间:2017-05-09 03:38:31

标签: c++

我想要https://github.com/Rventric/Text-Detection,但如果我运行此命令:

g++ -o  DEMO Demo.cpp `pkg-config opencv --cflags --libs`

我收到此错误:

/tmp/ccTKjiBu.o: In function `main':
Demo.cpp:(.text+0x159): undefined reference to `TextDetection::detectText(cv::Mat const&, std::vector<std::string, std::allocator<std::string> >, bool)'
/tmp/ccTKjiBu.o: In function `LinkCandidate::LinkCandidate()':
Demo.cpp:(.text._ZN13LinkCandidateC2Ev[_ZN13LinkCandidateC5Ev]+0x4c): undefined reference to `Iqueue::Iqueue()'
/tmp/ccTKjiBu.o: In function `GetCandidate::GetCandidate()':
Demo.cpp:(.text._ZN12GetCandidateC2Ev[_ZN12GetCandidateC5Ev]+0x77): undefined reference to `Swt::Swt()'
/tmp/ccTKjiBu.o: In function `VericaficationTextLine::VericaficationTextLine()':
Demo.cpp:(.text._ZN22VericaficationTextLineC2Ev[_ZN22VericaficationTextLineC5Ev]+0x25): undefined reference to `FilterBox::FilterBox()'
collect2: error: ld returned 1 exit status

谁解决了这个错误?

1 个答案:

答案 0 :(得分:3)

糟糕,您正在尝试创建名为TextDirection.cpp的可执行文件。您没有指定输出文件名以使用-o标志。如果要创建名为demo的可执行文件,则需要

g++ -o demo TextDetection.cpp Demo.cpp `pkg-config opencv --cflags --libs`

此外,您可能需要恢复原始源文件TextDirection.cpp,因为您可能无意中将其销毁。