C语言链接找不到函数 c语言中链接无法打开debug

undefined reference to异常怎么解决这是个编程链接错误,意思是说在你的程序里引用了某个函数或变量, 但是链接器找不到该变量的定义.
(1)如果报的符号是在某个第三方库里的, 比如uuid的什么什么函数, 则要检查你的libqte是不是编译得正确. 本来这些库应该正确链接到libqte.so上, 这样在qtopia链接的时候就不需要显式的加上这些库了.
有的时候libqte没有正确链接好, 但是在编译libqte阶段不会报错, 到后面qtopia或者其他应用编译的时候就出错了.
(2)把报错的库删除, 重新编译库. 如果是libqte, 要把你环境里的出现libqte的地方都检查检查, 有可能存在不同的libqte互相影响.
扩展资料:
程序错误类型
程序错误类型主要有语法错误、语义错误和逻辑错误,其中,语法错误和逻辑错误能通过编译器发现.
(1)语法错误
语法错误是因为源程序中不正确的代码产生的,即在编写程序时没有遵守语法(或词法)规则 , 书写了错误的语法代码,从而导致编译器无法正确解释源代码而产生的错误,通常是由于录入的错误引起的,它在词法分析或语法分析时检测出来 。
(2)语义错误
语义错误是指源程序中不符合语义规则的错误 , 即一条语句试图执行一条不可能执行的操作而产生的错误 。语义错误有的在语义分析时检测处来,有的在运行时才能检测出来 。如变量声明错误、作用域错误、数据存储区的溢出等错误 。
(3)逻辑错误
逻辑错误是指程序的运行结果和程序员的设想有出入时产生的错误 。这类错误并不直接导致程序在编译期间和运行期间出现错误,但是程序未按预期方式执行,产生了不正确的运行结果,较难发现 。这种错误只能通过分析结果,将结果与设计方案进行对比来发现 。
参考资料:百度百科-错误处理
C语言 在自定义函数中调用另一个自定义函数显示未找到函数的定义【C语言链接找不到函数 c语言中链接无法打开debug】把被调用函数写到调用函数上面去 , 这样就可以免去声明 。
这里你也可以把被调用函数剪切到调用函数上面去做一下测试 。
c语言在调试时说不能找到外部函数怎么办编译的时候需要指定你调用的那个函数的库文件 。
用VC时在做工程的时候指定 ,
用UNIX要写MAKEFILE , 在其中指定 。
我在c语言文件中加载头文件,为什么编译出错,说找不到头文件中定义的函数呢?求高手帮忙?。?/h2>编译C语言链接找不到函数的命令错C语言链接找不到函数了吧
gcc a.c b.c -o main
其C语言链接找不到函数他没问题C语言链接找不到函数,即使不加b.h编译也不会错
c语言调用外部函数连接不了你必须用include包括file1和file2否则虽然你用extern告诉编译器有这两个函数,能通过编译,但是实际上编译器并不知道这两个文件在哪,所以会出错
c语言中undefined reference to ""怎么解决大部分原因是链接时缺失了相关目标文件
首先编写如下代码
// test.h
#ifndef __TEST_H__
#define __TEST_H__
void test();
#endif
// test.c
#include string.h
#include stdio.h
void test()
{
printf("just test it\n");
}
// main.c
#include "test.h"
int main(int argc, char **argv)
{
test();
return 0;
}
然后输入以下命令,你会得到两个.o文件
$ gcc -c test.c
$ gcc –c main.c
编译时报错了,这是最典型的undefined reference错误 , 因为在链接时发现找不到某个函数的实现文件 。编写如下命令即可 。
$ gcc -o main main.o test.o
关于C语言链接找不到函数和c语言中链接无法打开debug的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读