社区
IBM AIX
帖子详情
aix6.1 gcc编译时的一个警告
不辣
2012-09-20 02:29:58
"
ld: 0711-224 WARNING: Duplicate symbol
"
...全文
213
5
打赏
收藏
aix6.1 gcc编译时的一个警告
"ld: 0711-224 WARNING: Duplicate symbol"
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mymtom
2012-09-28
打赏
举报
回复
按道理 .h 里的变量是要加 extern 的。
但是如果没有初始化的话 去掉 extern 也是可以的。
具体的细节可以看看这个帖子的6楼
http://topic.csdn.net/u/20090730/18/c82db8af-6488-411a-b734-56bddd61a467.html
不辣
2012-09-28
打赏
举报
回复
[Quote=引用 3 楼 的回复:]
6.1 的 ld 确实会由这种警告,建议查一下代码。
多半是在.h文件里定义变量引起的
C/C++ code
$ cat foo.h foo.c main.c
/**
* @file foo.h
* @brief
*/
int foo = 1;
/**
* @file foo.c
* @brief
*/
#inclu……
[/Quote]
道理是这样子的,问题是解决方法必须在头文件加"extern "? 这是不是比较常规的解决方法?不是太符合平时的习惯以及头文件的作用
mymtom
2012-09-25
打赏
举报
回复
6.1 的 ld 确实会由这种警告,建议查一下代码。
多半是在.h文件里定义变量引起的
[code=C/C++]
$ cat foo.h foo.c main.c
/**
* @file foo.h
* @brief
*/
int foo = 1;
/**
* @file foo.c
* @brief
*/
#include "foo.h"
/**
* @file main.c
* @brief
*/
#include <stdio.h>
#include "foo.h"
int main(int argc, char *argv[])
{
printf("%d\n", foo);
return 0;
}
$ xlc -o foo foo.c main.c
foo.c:
main.c:
ld: 0711-224 WARNING: Duplicate symbol: foo
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
$ cat foo.h foo.c main.c
/**
* @file foo.h
* @brief
*/
extern int foo;
/**
* @file foo.c
* @brief
*/
#include "foo.h"
int foo = 1;
/**
* @file main.c
* @brief
*/
#include <stdio.h>
#include "foo.h"
int main(int argc, char *argv[])
{
printf("%d\n", foo);
return 0;
}
$ xlc -o foo foo.c main.c
foo.c:
main.c:
$
[/Code]
不辣
2012-09-24
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
警告没关系的
[/Quote]
这东西多了就比较咋眼
ll36031715
2012-09-20
打赏
举报
回复
警告没关系的
AIX
apache module问题
今天
一个
同事问道
一个
apache module在
AIX
平台下
编译
链接的问题。虽然自己2年前就开始搞apache dso,但是对在
AIX
下还真是头一次。看了1个多小
时
,没有结果,希望有经验的朋友指点一下。 没有采用apxs
gcc
-g -shared -o libmod_xxxx.so.2.2.0 XXX.o XXXXX.o mod_xxx.o -rdynamic -lm -lpthread -...
arm-server安装nvidia驱动,解决
gcc
版本不匹配问题,以及内核签名失败
首先安装基础包,安装网络依赖的
时
候要用 [root@localhost tmp]# yum -y install wget 一、源码
编译
安装
gcc
-4.9.2 1、下载
gcc
源码包 Download (HTTP):http://ftp.gnu.org/gnu/
gcc
/
gcc
-4.9.2/
gcc
-4.9.2.tar.gz 2、解压压缩包 [root@localhost tmp]# cd /usr/local/ [root@localhost local]# tar -zxvf
gcc
-4.
编译
小结(2)
GCC
常见用法及技巧
这里把
编译
时
常用的一些集中起来,方便查找。 例1.最简单的
编译
例子。 默认是
编译
成32位程序
gcc
-o xcl test.c
编译
成64位:
gcc
-m64 -o xcl test.c 各系统
编译
64位程序开关如下:
AIX
64BIT -m
aix
64 HP-UX 64bit -mlp64 Solaris 64bit -m64 Linux
不同平台
编译
器区别及迁移注意事项
Sun Studio ,
AIX
xlc,及
gcc
使用方法:简介: Sun Studio
编译
器支持sun公司出产的sparc处理器,及x86体系机构的处理器。目前最新版本为5.10,5.3以后的版本对C语言c89、c99标准都支持。可以通过-xc99指定
编译
器按特定c语言标准
编译
。 XL C/C++是基于标准的命令行
编译
器,用于在基于 POWER 处理器的系统上运行的 UNIX操作系统
AIX
,也有linux版本。XL C/C++ 不仅使用 IBM POWER、POWER3™ 和 POWER4™
GDB调试无行号,报dwarf error问题解决
的问题,网上很多资料说得很含糊,大多也都一知半解,真要深入研究,还是有很多坑的。一般出现在
gcc
编译
环境版本与gdb调试环境版本不匹配导致,一般可以通过
编译
时
指定dwarf版本解决除了我们自身的源码需要指定dwarf版本,程序所依赖的第三方库也需要使用指定的dwarf版本进行
编译
推荐
一个
零声学院免费教程,个人觉得老师讲得不错,分享给大家:[Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,
IBM AIX
1,196
社区成员
1,016
社区内容
发帖
与我相关
我的任务
IBM AIX
该论坛主要探讨IBM AIX平台的安装、部署、应用开发等话题,并为网友们提供自由交流的平台。
复制链接
扫一扫
分享
社区描述
该论坛主要探讨IBM AIX平台的安装、部署、应用开发等话题,并为网友们提供自由交流的平台。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章