免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: sea_soft

[C] Proc和Makefile问题,谢谢 [复制链接]

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
发表于 2008-09-01 17:12 |显示全部楼层
exec sql include sqlca;
exec sql include oraca;
exec oracle option (oraca=yes);

将这三个语句注释掉试试。
如果还不行,再将oracle相关的几个头文件
#include <sqlca.h>
#include <sqlda.h>
#include <sqlcpr.h>

注释掉试试。

论坛徽章:
0
发表于 2008-09-01 20:26 |显示全部楼层
原帖由 happy_fish100 于 2008-9-1 17:12 发表
exec sql include sqlca;
exec sql include oraca;
exec oracle option (oraca=yes);

将这三个语句注释掉试试。
如果还不行,再将oracle相关的几个头文件
#include
#include
#include

注释掉试试。

多谢,不过还是问题依旧

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
发表于 2008-09-01 20:42 |显示全部楼层

回复 #1 sea_soft 的帖子

>> printf("%.*s\n", msg_len, err_msg);

%.*s,这是什么格式?

论坛徽章:
0
发表于 2008-09-01 22:31 |显示全部楼层
$(PROC) CLOSE_ON_COMMIT�NO iname=alarm.pc include=$(PROCINCL1) include=$(PROCINCL2)
-->
$(PROC) threads=yes .....?
或者
$(PROC) threads=no .... ?
这两个参数都实验一下
我感觉是线程支持的缘故导致sqlctx接口不同

论坛徽章:
0
发表于 2008-09-02 11:13 |显示全部楼层
原帖由 happy_fish100 于 2008-9-1 20:42 发表
>> printf("%.*s\n", msg_len, err_msg);

%.*s,这是什么格式?

Proc自带的例子

论坛徽章:
0
发表于 2008-09-02 11:17 |显示全部楼层
ln-bes2% pwd
/oracle/app/oracle/product/9.2.0/lib
ln-bes2% ls -lrt libclntsh*
-rwxr-xr-x   1 oracle   dba      17391856 2006   6月5  libclntsh.so.9.0
lrwxrwxrwx   1 oracle   dba           16 2006   6月5  libclntsh.so -> libclntsh.so.9.0
查看了下libclntsh.so是用ln -s做了的一个连接,请问,这种情况出现的
gmake: `/oracle/app/oracle/product/9.2.0/lib/libclntsh.so' is up to date.
是跟ln-s有关吗,怎么解决,谢谢

论坛徽章:
0
发表于 2008-09-02 11:39 |显示全部楼层
原帖由 happy_fish100 于 2008-9-1 20:42 发表
>> printf("%.*s\n", msg_len, err_msg);

%.*s,这是什么格式?



这个*表示用 msg_len 代替这里的*

试一下printf("%.*s",3,"abcdef");

论坛徽章:
0
发表于 2008-09-02 12:00 |显示全部楼层
原帖由 ivhb 于 2008-9-1 22:31 发表
$(PROC) CLOSE_ON_COMMIT�NO iname=alarm.pc include=$(PROCINCL1) include=$(PROCINCL2)
-->
$(PROC) threads=yes .....?
或者
$(PROC) threads=no .... ?
这两个参数都实验一下
我感觉是线程支持 ...

多谢,不过还是报那个错:
"alarm.c", line 201: Error: Too many arguments in call to "sqlcxt()".
……

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
发表于 2008-09-02 12:31 |显示全部楼层
原帖由 5毛党党员 于 2008-9-2 11:39 发表



这个*表示用 msg_len 代替这里的*

试一下printf("%.*s",3,"abcdef");


用于字符串没有结束符\0的场合吧,否则直接%s就可以了,未必指定长度呢?

论坛徽章:
0
发表于 2008-09-02 15:15 |显示全部楼层
LZ的配置,应该有问题吧!



我测试一下,没问题.
环境:centos3.9 oracle9.24

删掉下面2行
exec sql include sqlca;
exec sql include sqlda;

下面2行,不能跟上面2两行同时出现
#include <sqlca.h>
#include <sqlda.h>

...............................................................
配置文件ORACLE_HOME/precomp/admin/pcscfg.cfg
sys_include=(/usr/include,/usr/lib/gcc-lib/i486-suse-linux/2.95.3/include,/usr/lib/gcc-lib/i386-redhat-linux/3.2.3/include)
ltype=short
include=$(ORACLE_HOME)/precomp/public
include=$(ORACLE_HOME)/precomp/hdrs
include=$(ORACLE_HOME)/tpcc2x_2/src
include=$(ORACLE_HOME)/precomp/include
include=$(ORACLE_HOME)/oracore/include
include=$(ORACLE_HOME)/oracore/public
include=$(ORACLE_HOME)/rdbms/include
include=$(ORACLE_HOME)/rdbms/public
include=$(ORACLE_HOME)/rdbms/demo
include=$(ORACLE_HOME)/nlsrtl/include
include=$(ORACLE_HOME)/nlsrtl/public
include=$(ORACLE_HOME)/network_src/include
include=$(ORACLE_HOME)/network_src/public
include=$(ORACLE_HOME)/network/include
include=$(ORACLE_HOME)/network/public
include=$(ORACLE_HOME)/plsql/public
parse=full


...............................................................
makefile文件:

PROC=proc
CC=cc

ORACLE_HOME=/home/oracle/oracle92
INCPATH=$(ORACLE_HOME)/precomp/public
LIBPATH=-L$(ORACLE_HOME)/lib -lclntsh

.SUFFIXES: .sqc .pc .ec .o.c .o

.pc.o:
        $(PROC) -c include=$(INCPATH) iname=$*.pc
        $(CC) -c -I$(INCPATH)  $*.c
.c.o:
        $(CC) -c -I$(INCPATH)  $*.c

all: demo clean

demo:demo.o
        $(CC)  -Wall $? $(LIBPATH) -o $@

clean:
        -rm *.o *.c *.lis
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP