PROC*C的问题怎么解决啊

[复制链接]
查看11 | 回复7 | 2011-2-18 11:43:34 | 显示全部楼层 |阅读模式
请高手帮忙.
我用的AIX装了oracle9i后PROC*C老是编译不了.
出现下面问题.
:
$ proc iname=filename.pc oname=filename.c
Pro*C/C++: Release 9.2.0.1.0 - Production on Fri Jul 30 15:20:38 2004
Copyright (c) 1982, 2002, Oracle Corporation.All rights reserved.
System default option values taken from: /db/home0/app/oracle/product/9.2.0/precomp/admin/pcscfg.cfg
$ gcc -o filename filename.c
ld: 0711-317 ERROR: Undefined symbol: .sqlorat
ld: 0711-317 ERROR: Undefined symbol: .sqlcxt
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
collect2: ld returned 8 exit status
请高手告诉我应该怎样处理.
回复

使用道具 举报

千问 | 2011-2-18 11:43:34 | 显示全部楼层
pcscfg.cfg里的路径设置了吗?
回复

使用道具 举报

千问 | 2011-2-18 11:43:34 | 显示全部楼层
pcscfg.cfg的路径我都设置好了还是不行. :-(
有没有别的办法. 一般要加哪几个头文件?
回复

使用道具 举报

千问 | 2011-2-18 11:43:34 | 显示全部楼层
在编译的时候要做库链接的
gcc -o filename filename.c -I/opt/oracle/product/9.2.0/precomp/public -L/opt/oracle/product/9.2.0/lib -lclntsh -ldl -lm -lnsl看看行不?
回复

使用道具 举报

千问 | 2011-2-18 11:43:34 | 显示全部楼层
结果还是一样:
$ gcc -o filename filename.c -I$ORACLE_HOME/precomp/public -L$ORACLE_HOME/lib -lclntsh -ldl -lm -lnsl
ld: 0711-317 ERROR: Undefined symbol: .sqlorat
ld: 0711-317 ERROR: Undefined symbol: .sqlcxt
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
collect2: ld returned 8 exit status
我的pcscfg.cfg内容这样对吗?
sys_include=($ORACLE_HOME/precomp/public,/usr/include,/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.2.0/3.0.1/include)
ltype=short
define=__64BIT__
define=_GCC_
define=_LONG_LONG
请高手帮忙。。。
回复

使用道具 举报

千问 | 2011-2-18 11:43:34 | 显示全部楼层
我的pcscfg.cfg内容是这样的:
sys_include=(/usr/include,/$ORACLE_HOME/precomp/public)
include=/usr/include
include=$ORACLE_HOME/precomp/public
include=$ORACLE_HOME/rdbms/demo
include=$ORACLE_HOME/otrace/public
include=$ORACLE_HOME/rdbms/public
include=$ORACLE_HOME/network/public
include=$ORACLE_HOME/plsql/public
ltype=short
回复

使用道具 举报

千问 | 2011-2-18 11:43:34 | 显示全部楼层
我成上面的cfg后。
结果还是一样,不知道是不是我的系统有问题?
郁闷啊。。。。。
回复

使用道具 举报

千问 | 2011-2-18 11:43:34 | 显示全部楼层
原帖由 zxmzhf 于 2004-8-3 14:26 发表
在编译的时候要做库链接的
gcc -o filename filename.c -I/opt/oracle/product/9.2.0/precomp/public -L/opt/oracle/product/9.2.0/lib -lclntsh -ldl -lm -lnsl看看行不?


我是自己手动连接的,当连接的时候也抱了类似的错误,后来找了无数资料,发现只要把后面的-L/opt/oracle/product/9.2.0/lib换成-L/opt/oracle/product/lib32就可以了。还有注意看下自己的oracle下的bin文件夹里面是否有proc文件,proc开发套件默认是不安装的。需要安装的时候勾选起来~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行