免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3220 | 回复: 6
打印 上一主题 下一主题

[SCO UNIX] gcc编译ec程序问题(informix) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-12 11:10 |只看该作者 |倒序浏览
请问,我写了一个ec程序,最简单的,先用esql预编译成c,再用gcc编译,总是提示一些错误,如重复定义或没定义,可能是跟头文件或库有关,请问gcc编译的参数怎么设置啊,除了-I,-L外还要包含哪些参数,谢谢!

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2010-01-12 13:30 |只看该作者
贴出出错信息,编译器环境等信息。

论坛徽章:
0
3 [报告]
发表于 2010-01-12 14:10 |只看该作者
这是我的makefile文件:
INFORMIX_INC = -I$(INFORMIXDIR)/incl/public -I$(INFORMIXDIR)/inlc -I$(INFORMIXDI
R)/incl/esql
DBLIB=$(INFORMIXDIR)/lib/esql/checkapi.o -L$(INFORMIXDIR)/lib/esql -L$(INFORMIXD
IR)/lib -lixsql -lixasf -lixgen -lixos -lixgls -lnsl_s -lcrypt_i -lsocket -lm -l
suds -lx
big99:big99.o
        gcc -o $@ big99.o
big99.o:
        gcc $(INFORMIX_INC) $(DBLIB) -c big99.c

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
4 [报告]
发表于 2010-01-12 16:30 |只看该作者

回复 #3 nsgi 的帖子

贴出错信息 ...

你的 gcc 版本 ....

论坛徽章:
0
5 [报告]
发表于 2010-01-13 16:04 |只看该作者
gcc version 4.2.0
makefile:

INFORMIX_INC   = -I$(INFORMIXDIR)/incl/public -I$(INFORMIXDIR)/incl \
        -I$(INFORMIXDIR)/incl/esql

LIBS_ESQL                = -L$(INFORMIXDIR)/lib/esql -L$(INFORMIXDIR)/lib -lifsq
l \
-lifasf -lifgen -lifos -lifgls -lifglx $(INFORMIXDIR)/lib/esql/checkapi.o
CC             = gcc

#编译.o到可执行文件
mainexe:big99.o
        $(CC) -o $@ big99.o
big99.o:
        $(CC) $(INFORMIX_INC) $(LIBS_ESQL) -o $@ big99.c



错误信息:
gcc -I/informix/incl/public -I/informix/incl  -I/informix/incl/esql -L/i
nformix/lib/esql -L/informix/lib -lifsql  -lifasf -lifgen -lifos -lifgls -lifglx
/informix/lib/esql/checkapi.o -o big99.o big99.c
In file included from /usr/include/sys/localedef.h:46,
                 from /opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/include
/stdlib.h:568,
                 from big99.ec:3:
/usr/include/sys/localedef31.h:195: error: conflicting types for 'loc_t'
/informix/incl/public/locator.h:120: error: previous declaration of 'loc_t' was
here
make: 1254-004 The error code from the last command is 1.

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
6 [报告]
发表于 2010-01-14 10:44 |只看该作者
你看看你的 big99.ec 文件的第三行,是啥子咚咚?

好像是一个数据类型不对 。。。。

另外:你的 gcc 是自己编译的吗?为什么要用 gcc 呢?

如果你用 gcc 编译,好像还要定义一些环境变量的 。

论坛徽章:
0
7 [报告]
发表于 2010-01-15 10:14 |只看该作者
在SCO下编译经EC预处理的C程序建议用cc,不要用gcc
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP