在Eclipse中构建C/C++项目时出错:未定义的引用函数
Error building C/C++ project in Eclipse: undefined referenced functions
我正在eclipse中制作一个C/C++项目,自动生成makefile。我得到错误:
/home/globalcom/Desktop/Eclipse/Bi3000_testApplication/Default//functions/functions.c:22:对bi3000_clearLines'
/home/globalcom/Desktop/Eclipse/Bi3000_testApplication/Default/../functions/functions.c:25: undefined reference to
bi3000_writeDisplay'的未定义引用/home/globalcom/Desktop/Eclipse/Bi3000_testApplication/Default//functions/functions.c:28:对bi3000_writeDisplay'
/home/globalcom/Desktop/Eclipse/Bi3000_testApplication/Default/../functions/functions.c:31: undefined reference to
bi3000_writeDisplay'的未定义引用/home/globalcom/Desktop/Eclipse/Bi3000_testApplication/Default//functions/functions.c:34:对`bi3000_writeDisplay'的未定义引用
其中default是eclipse生成的文件夹,它保存makefile的位置。我已经很好地定义了项目中->属性->C/C++常规->路径和符号的include路径,而且项目中的所有#include似乎都被识别了,但我遇到了这个编译错误。
函数在函数.h中定义,并在函数中声明。c:
void print_in_display(const char*line1、const char*line2、const char*line3、const char*line4){
const char firstline = 1;
bi3000_clearLines(0,7);
if(line1 != NULL)
writeDisplay(firstline, 0,0,8,(char *) line1);
if(line2 != NULL)
writeDisplay(firstline + 1, 0,0,8,(char *) line2);
if(line3 != NULL)
writeDisplay(firstline + 2, 0,0,8,(char *) line3);
if(line4 != NULL)
writeDisplay(firstline + 3, 0,0,8,(char *) line4);
}函数(writeDisplay)包含在librsm.h中。在main()中调用print_in_display()
提前感谢
我假设它是来自文件扩展名的C代码。因此,在这种情况下,请尝试使用关键字extern,并在functions.c中声明"bi3000_writeDisplay"函数的原型。希望这能有所帮助。
- 编译C++时未定义的引用
- vscode g++链路故障:体系结构x86_64的未定义符号
- 如何修复此错误:未定义对"距离(浮点数,浮点数,浮点数,浮点数,浮点数)"的引用
- 我的项目不会像"undefined reference to `grpc::g_core_codegen_interface'"那样使用未定义的引用错误进行编译
- 不知道某个东西是否被忽略会引入未定义的行为吗
- PCL 出错:体系结构x86_64 @pcl的未定义符号
- '未定义对..'的引用;将APP_STL从gnustl_static切换到c++_shared后出错
- 使用静态变量未解析的外部符号/未定义的引用时出错
- C++ Linux 加载共享库时出错“未定义的符号:pthread_create”
- 链接webrtc本机时出错,因为未定义对具有std::string的方法的引用
- 编译共享对象时出错:未检测到C++类定义
- 对wxLog::DoLog的未定义引用在针对wxWidget 3.0构建wxHaskell时出错
- 凉亭ROS插件出错:建筑x86_64的未定义符号
- 编译 c++ 文件时出错:未定义的符号
- 在c++上编译时出错:未定义对的引用
- 构建应用程序时出错:体系结构 armv7 的未定义符号
- 在Eclipse中构建C/C++项目时出错:未定义的引用函数
- C++程序中由于未定义的引用而出错
- 在 c++ 中使用字符串时出错。error C2679:二进制'<<':未定义采用类型为"类"的右操作数的运算符
- 编译 caffe 时出错(未定义对 'caffe::D ecodeDatumNative(caffe::D atum*)'的引用)