急!!!makefile
时间:2011-11-28
来源:互联网
OPproxy.c:(.text+0x0): multiple definition of `main'
OPproxy.o:OPproxy.c:(.text+0x0): first defined here
OPproxy.o: In function `reaper':
OPproxy.c:(.text+0x786): multiple definition of `reaper'
OPproxy.o:OPproxy.c:(.text+0x786): first defined here
OPproxy.o: In function `OPproxy':
OPproxy.c:(.text+0x174): multiple definition of `OPproxy'
OPproxy.o:OPproxy.c:(.text+0x174): first defined here
OPproxy.o: In function `quitforpipe':
这些函数已经在OPproxy所包含的头文件中定义,怎么还会出这样的错误?求求大侠们,帮帮忙
作者: zscedu 发布时间: 2011-11-28
作者: wzl9030 发布时间: 2011-11-28
加上编译选项 -I+头文件目录
假如在当前目录有如下目录 include src
那么加上 -I./include
作者: leo_wanta 发布时间: 2011-11-28
作者: cfjtaishan 发布时间: 2011-11-28
重复定义了:不知道你的makefile是如何写的,在同目录下的源文件中有多个main函数。你的makefile可以写成可编译多个源文件中具有多个main函数的。需要你改一下。
/usr/bin/ld: errno: TLS definition in /lib/libc.so.6 section .tbss mismatches no
/lib/libc.so.6: could not read symbols: Bad value
作者: zscedu 发布时间: 2011-11-28
1.更新你的gcc版本(这个是gcc的问题)
2.将程序中的#include <error.h>去掉,自己定义一个int errno;
作者: keiy 发布时间: 2011-11-28
两个解决方案:
1.更新你的gcc版本(这个是gcc的问题)
2.将程序中的#include <error.h>去掉,自己定义一个int errno;
作者: zscedu 发布时间: 2011-11-28
“If you get an error such as this:
/usr/bin/ld: errno: TLS definition in /lib/libc.so.6 section .tbss mismatches
non-TLS reference in [...]
What you need to do is this: open the appropriate makefile (i.e. in
TKIGES), find the line DEFAULT_INCLUDES, and add -include
/usr/include/errno.h to the end.
This applies to gcc-3.3.6, at least.
在CFLAGS后边加-include
/usr/include/errno.h也可以”
谁能解释一下这是什么意思呀?
作者: zscedu 发布时间: 2011-11-28
/usr/bin/ld: errno: TLS definition in /lib/libc.so.6 section .tbss mismatches
non-TLS reference in [...]
你可以这样做:
打开合适的makefile,找到DEFAULT_INCLUDES,在它的后面加
-include/usr/include/errno.h
这个是在gcc-3.3.6中出现的
在CFLAGS后边加
-include/usr/include/errno.h
也可以
所以最好的方案是升级gcc
作者: keiy 发布时间: 2011-11-28
当你得到如下错误信息:
/usr/bin/ld: errno: TLS definition in /lib/libc.so.6 section .tbss mismatches
non-TLS reference in [...]
你可以这样做:
打开合适的makefile,找到DEFAULT_INCLUDES,在它的后面加
-include/usr/include/errno.h
……
作者: zscedu 发布时间: 2011-11-28
可以肯定的是这个是gcc的BUG
你也可以按上面的方法试试
因为gcc不同版本调用include时,可能会先从它自己定制的目录(如lib/gcc-x.xx/include)录而非/usr/include调用头文件的
再不行,将error.h中你用到的宏自己写个头文件
作者: keiy 发布时间: 2011-11-28
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28