免费注册 查看新帖 |

Chinaunix

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

aix编译错误 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-31 22:30 |只看该作者 |倒序浏览
在linux下编译正常,到aix下编译提示如下:\r\n\"/ora_client/precomp/public/sqlda.h\", line 62.27: 1506-046 (S) Syntax error.\r\n\"uni_client.c\", line 50.21: 1506-068 (S) Operation between types \"struct sigset_\r\nt\" and \"int\" is not allowed.\r\nmake: The error code from the last command is 1.\r\n\r\n\r\nStop.

论坛徽章:
0
2 [报告]
发表于 2009-01-01 00:36 |只看该作者
语法错误?应该是编译器的差异所造成的,把对应行的代码贴出来。

论坛徽章:
0
3 [报告]
发表于 2009-01-04 12:43 |只看该作者
ssize_t \r\nReadn(int fd,char *vptr,size_t n)\r\n{\r\n\r\n        ssize_t nleft;\r\n        ssize_t nread;\r\n        char *ptr;\r\n        int  i_timeout,j=0;\r\n        int t1=0;\r\n        struct sigaction act;\r\n        char s_str[13];\r\n        char bufls[1461];\r\n        FILE *fp;\r\n        fp=fopen(\"/tmp/test.log\",\"w\");\r\n        ptr = vptr;\r\n        nleft = n;\r\n/*-----超时控制-----*/        \r\n        act.sa_handler = sigalarm_handler;\r\n        act.sa_mask =0;\r\n        act.sa_flags=0;\r\n/*\r\n        vptr[23+1]=\'\\0\';\r\n*/\r\n        sigaction(SIGALRM,&act,NULL);\r\n        TimeOutFlag=0;\r\n        i_timeout=config.TimeOut;\r\n        alarm(i_timeout);\r\nmemset(vptr,\'\\0\',sizeof(vptr));\r\n        while(nleft > 0){\r\n        t1++;\r\n/***\r\n        read 返回值:\r\n                0:结束;\r\n                >0:返回读取的字节数;\r\n                -1:出错,errno定义出错值;\r\n/*\r\nmemset(ptr,\'\\0\',sizeof(ptr));\r\n***/\r\n                nread=read(fd,vptr+(t1-1)*1460,1460);\r\n                if(t1 == 1) {strncpy(s_str,vptr,12);nleft=atoi(s_str);}\r\n                \r\n                if(nread <0){\r\n                        if (errno==EINTR){\r\n                                if(TimeOutFlag==1) {\r\n                                        return E_TIMEOUT;\r\n                                }\r\n                                nread = 0;\r\n                        }\r\n                        else \r\n                                return -1;\r\n                }\r\n                else if(nread == 0)\r\n                        break;\r\n        nleft -= nread;\r\n        ptr += nread;\r\nfprintf(fp,\"\\n [%d]vptr =[%s]nread=[%d]nleft=[%d]\",strlen(vptr),vptr,nread,nleft);\r\n        }\r\n        alarm(0);\r\n        fprintf(fp,\"end mptr =[%s] vptr =[%s]\",ptr,vptr);\r\n        fclose(fp);\r\n        fflush(stdout);\r\n        return 0;\r\n}

论坛徽章:
0
4 [报告]
发表于 2009-01-04 12:44 |只看该作者
上面是部分代码,红色为出错的地方

论坛徽章:
0
5 [报告]
发表于 2009-01-04 12:50 |只看该作者
是否是gcc的版本不一致?

论坛徽章:
0
6 [报告]
发表于 2009-01-04 20:16 |只看该作者
操作系统版本是什么?\r\n用proc编译的?

论坛徽章:
0
7 [报告]
发表于 2009-01-05 11:02 |只看该作者
act.sa_mask =0;改成sigemptyset(&act.sa_mask);行了\r\n但\"/ora_client/precomp/public/sqlda.h\", line 62.27: 1506-046 (S) Syntax error.找不出原因
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP