免费注册 查看新帖 |

Chinaunix

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

请教 Linux下编写occi程序出错 undefined reference to `oracle::occi::Environment [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-08-03 16:07 |只看该作者 |倒序浏览
环境是 LinuxAS4
gcc 版本 : 3.4.4
occi版本: occi_gcc343_102030.tar.gz

很简单的一个程序[occi10.cpp],如下:
#include <string>
#include <iostream>
#include <occi.h>
using namespace oracle:cci;
using namespace std;


int main(int argc, char* argv[])
{
        printf("Connect to Oracle\n";

        string  sUser     = "USER";
        string  sPassword = "ASSWORD";
        string  sDB       = "DATABASE";
        Environment *env  = Environment::createEnvironment (Environment:EFAULT);
        Connection  *conn = env->createConnection (sUser, sPassword, sDB);

        Statement * stmt = conn->createStatement("SELECT DATA1, DATA2 FROM TEST_TABLE";
      
        ResultSet *rset = stmt->executeQuery();

        while (rset->next())
        {
                cout << "DATA1:" << rset->getString (1) ;
                cout << "DATA2:" << rset->getString (2) << endl;

        }
        stmt->closeResultSet (rset);
        conn->terminateStatement (stmt);

        env->terminateConnection (conn);
        Environment::terminateEnvironment (env);
        return true;
}

编译的命令如下:
g++ -L /usr/lib/oracle/10.2.0.3/client/lib  -I /usr/include/oracle/10.2.0.3/client/  -o occi10.o -c occi10.cpp
然后:
g++ -o occi10 occi10.o

之后产生错误:
occi10.o(.text+0x23f): In function `main':
: undefined reference to `oracle:cci::Environment::createEnvironment(oracle:cci::Environment::Mode, void*, void* (*)(void*, unsigned int), void* (*)(void*, void*, unsigned int), void (*)(void*, void*))'
occi10.o(.text+0x51e): In function `main':
: undefined reference to `oracle:cci::Environment::terminateEnvironment(oracle:cci::Environment*)'
collect2: ld returned 1 exit status




期望高手指点,谢谢!

论坛徽章:
0
2 [报告]
发表于 2007-08-04 09:38 |只看该作者
我想你应该在连接时加上occi的库,如:
g++ -o occi10 -L_<1>_ -l_<2>_ occi10.o
位置<1> occi库文件所在的路径
位置<2> occi库文件

[ 本帖最后由 xaero 于 2007-8-4 09:41 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP