Linux下编译C++程序遇到错误:undefined reference to `*::*
2016-06-02 11:25
405 查看
“undefined reference to”的意思是,该函数未定义。
如果使用的是g++,有以下检查方案:
如果提示未定义的函数是某个库的函数。检查库是否已经安装,并在编译命令中采用-l和-L参数导入库。
如果提示未定义的函数是程序中的函数。检查是否在头文件中声明,是否在编译中有对应的obj文件,检查函数的或者变量的名字是否正确,是否是因为前后拼写不一致造成的。
如果提示未定义的函数是程序中的函数,还有一种很隐蔽的可能:检查改函数的代码的上下文是否有#ifdef或者#ifndef等预编译信息,这也很有可能导致相关代码没有被编译而出现“undefined reference to”提示。
如果使用的是g++,有以下检查方案:
如果提示未定义的函数是某个库的函数。检查库是否已经安装,并在编译命令中采用-l和-L参数导入库。
如果提示未定义的函数是程序中的函数。检查是否在头文件中声明,是否在编译中有对应的obj文件,检查函数的或者变量的名字是否正确,是否是因为前后拼写不一致造成的。
如果提示未定义的函数是程序中的函数,还有一种很隐蔽的可能:检查改函数的代码的上下文是否有#ifdef或者#ifndef等预编译信息,这也很有可能导致相关代码没有被编译而出现“undefined reference to”提示。
相关文章推荐
- 【linux】man和--help
- Linux系统(Ubuntu/Debian/RedHat/CentOS)超级简单的samba配置文件smb.conf
- .vimrc的配置
- Linux下进度条
- centos6系列python2.7安装
- linux中的set命令: "set -e" 与 "set -o pipefail"
- linux几种查看日志的方法
- linux 编译kernel与svn版本冲突解决方法 [drivers/gpu/mali/mali/common/mali_kernel_core.o] 错误 1
- 解决vmware下64位linux系统不支持全虚拟化(VMX)
- 在Linux上配置vsftpd
- linux格式化u盘
- Linux 字体缺失解决方案
- Centos中vim的配置
- Linux基础(一)
- CentOS安装python包安装管理工具pip
- centos yum换阿里云源
- 把块存放在页高速缓存中
- 在LINUX下的进程资源的限制(STRUCT RLIMIT)
- 【linux】which和whereis
- Linux的时间同步到时间服务器