在CentOS 6.6上搭建C++运行环境并连接Oracle数据库

简介:

1、安装运行环境

1
# yum install gcc-c++

备注:此时会将gcc-c++和libstdc++-devel都安装上。


2、查看g++是否安装成功

1
[root@MyRHEL 桌面] # g++ -v

使用内建 specs。

目标:x86_64-redhat-linux

配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux

线程模型:posix

gcc 版本 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) 


3、测试

(1)测试C语言程序testc.c

1
2
3
4
5
6
#include<stdio.h>
int  main()
{
    printf ( "Hello C!\n" );
    return  0;
}

运行:

1
2
# gcc testc.c -o testc
# ./testc

(2)测试C++程序test.cpp

1
2
3
4
5
6
7
8
9
#include <iostream>    
using  namespace  std;                      
int  main()                                  
{                                            
     cout <<  "Come up and C++ me some time." ;  
     cout << endl;                             
     cout <<  "You won't regret it!"  << endl;   
     return  10;                                 
}

运行:

1
2
# g++ -o test1 test.cpp
# ./test1


4 安装OracleClient

主要安装oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpmoracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm

1
2
# rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
# rpm –ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm


5 配置

1)配置ld.so.conf文件,填入如下内容:

1
2
3
# vi /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/lib/oracle/11 .2 /client64/lib

2)配置/etc/hosts文件(此处填入Linux系统主机的IP地址和主机名称),填入如下内容:

1
2
3
4
# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.48.128 MyRHEL


6 测试与Oracle数据库连接

1)建立一个connclient.cpp文件,输入如下内容:

[root@MyRHEL test]# vi connclient.cpp

 

#include<iostream>

#include<string>

#include<occi.h>

using namespace std;

using namespace oracle::occi;

int main()

{

     Environment *env;

     Connection *conn;

     Statement *stmt;

     string struser("scott");

     string strpwd("Orcl0991");

     string strconn_string("10.208.17.206:1521/xe");

     env = Environment::createEnvironment(Environment::OBJECT);

     conn = env->createConnection(struser, strpwd, strconn_string);

     if(NULL!= conn)

               cout <<"conn success"<< endl;

     else

               cout <<"conn failed"<<endl;    

 

     string strsql("select deptno,dname from dept");

     stmt = conn->createStatement(strsql);

     ResultSet *rset = stmt->executeQuery();

     while(rset->next()){

               int deptno = rset->getInt(1);

               string dname = rset->getString(2);

               cout<<"deptno="<<deptno<<",dname="<<dname<<endl;

     }

     stmt->closeResultSet(rset);

     conn->terminateStatement(stmt);

     env->terminateConnection(conn);

     Environment::terminateEnvironment(env);

     return0;

}

 

2)编译运行:

1
2
3
4
5
6
7
[root@MyRHEL test]# g++ -o connclient  connclient.cpp -L /usr/lib/oracle/11.2/client64/lib  -I /usr/include/oracle/11.2/client64/  -locci  -lclntsh  /usr/lib64/libstdc++.so.6
[root@MyRHEL test]# ./connclient
conn success
deptno=10,dname=ACCOUNTING
deptno=20,dname=RESEARCH
deptno=30,dname=SALES
deptno=40,dname=OPERATIONS


     本文转自stock0991 51CTO博客,原文链接:http://blog.51cto.com/qing0991/1700679,如需转载请自行联系原作者







相关文章
|
3月前
|
Linux
2022年超详细如何使用Xftp连接CentOS 7来进行文件的传输【详细过程、图解】
这篇文章提供了使用Xftp工具连接到CentOS 7虚拟机进行文件传输的详细步骤和图解。步骤包括打开Xftp软件、创建新连接、查看并填写虚拟机的IP地址、输入虚拟机的连接账号密码,以及连接成功后进行文件传输。文章最后以"现场手撸、学无止境"作为结束语,鼓励读者不断学习和实践。
|
5月前
|
Oracle 关系型数据库 数据库
已解决:idea 连接 oracle 数据库 避雷
已解决:idea 连接 oracle 数据库 避雷
47 2
|
1月前
|
SQL Oracle 关系型数据库
Python连接Oracle
Python连接Oracle
20 0
|
3月前
|
Linux 虚拟化
成功解决:Xshell 无法连接虚拟机。如何使用Xshell连接CentOS7虚拟机(详细步骤过程)
这篇文章提供了使用Xshell连接CentOS 7虚拟机的详细步骤,包括编辑VMware的网络设置以启用桥接模式、检查个人电脑适配器虚拟网络的连接情况,以及通过Xshell新建并建立连接的过程。文章还提到了在虚拟机可以访问外网的情况下成功连接的后语,暗示了网络配置的重要性。
成功解决:Xshell 无法连接虚拟机。如何使用Xshell连接CentOS7虚拟机(详细步骤过程)
|
2月前
|
Linux Python
Linux之centos安装clinkhouse以及python如何连接
Linux之centos安装clinkhouse以及python如何连接
|
3月前
|
NoSQL 数据可视化 Linux
2022 年超详细步骤讲解 CentOS 7 安装Redis 。解决Redis Desktop Manager 图形化工具连接失败解决 ;connection failed处理。开机自启Redis
这篇文章提供了在CentOS 7上安装Redis的详细步骤,包括上传Redis安装包、解压安装、编译、安装、备份配置文件、修改配置以支持后台运行和设置密码、启动Redis服务、使用客户端连接Redis、关闭Redis服务、解决Redis Desktop Manager图形化工具连接失败的问题、设置Redis开机自启动,以及Redis服务的启动和停止命令。
2022 年超详细步骤讲解 CentOS 7 安装Redis 。解决Redis Desktop Manager 图形化工具连接失败解决 ;connection failed处理。开机自启Redis
|
3月前
|
Oracle 关系型数据库
Navicat 连接Oracle ORA-28547: connection to server failed, probable Oracle Net admin error
Navicat 连接Oracle ORA-28547: connection to server failed, probable Oracle Net admin error
112 0
|
5月前
|
网络协议 Linux 网络安全
蓝易云 - centos用ssh登录连接缓慢处理
请根据自己的实际情况尝试以上方法,找出导致SSH登录缓慢的原因,并进行相应的处理。
52 1
|
4月前
|
中间件 Java 测试技术
单元测试问题之编写单元测试时运行环境、数据库、中间件问题如何解决
单元测试问题之编写单元测试时运行环境、数据库、中间件问题如何解决
|
5月前
|
Oracle 数据可视化 关系型数据库
Oracle数据库安装及使用Navicat连接oracle2
Oracle数据库安装及使用Navicat连接oracle
下一篇
无影云桌面