VS2010+Oracle12g C++开发环境搭建笔记
来源:互联网 发布:东南亚知乎 编辑:程序博客网 时间:2024/05/19 18:40
1. 起因
最近用到Oracle OCCI编程技术(跨Windows和Linux平台),于是在本机Windows上搭起开发环境。从Oracle官网上下载了最新的版本12.1.0.2.0的64位企业版(12g以后,不再有32位版的Oracle),编码环境使用VS2010。捣鼓了一阵,把遇到的问题记录一下。
2. 安装Oracle
安装过程略。记住设置的口令,以后的sys和system的口令就是它了。
3. 在VS项目中配置开发环境
与OCCI编程相关的目录在D:\app\myoracle\product\12.1.0\dbhome_1\OCI下:
include目录是需要包含的头文件,lib是用于链接的库。在lib/MSVC下是支持各个版本VS的库:
这里的vc10、vc11、vc12表示的是对应的VS版本,比如vc10表示VS2010支持的库。只要在项目中引用这些头文件和库文件就可以了。
4. 问题来了
当我建立了项目,关联了相应的头文件和库文件后,编译时发现出现链接失败:
提示无法解析的外部符号oracle::occi::Environment::createEnvironment以及oracle::occi::Environment:: terminateEnvironment。
5. 原因
原来我建立的是Win32项目,也即是32位的应用程序,我却关联的是64位的Oracle库,这样就出现问题。当然,如果将项目转为x64就没有问题了,但是由于我其它的一些库是32位的,没法换,所以只能找解决方法了。
6. 解决方法
我安装在本机的Oracle是用来作为Oracle数据库用的,开发需求的话,就需要别想办法了。在Oracle官网上找到了Oracle Instant Client的下载:
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
根据官网的说法,这应该是用于发布需要用到Oracle的客户端产品,发现,正好有与Oracle版本对应的Instant Client:
而且还分32位和64位版本,正好,选择32位版本下来看看。选择了一个内容最全的版本:
但下载后发现,里面只有dll文件,没有.lib文件。
继续查看,发现本页面下,还有一个版本:
说有头文件和例子,那应该有库文件吧,下载下来,果然,有lib文件。
正好,两个组合,lib文件、dll文件都有了,搞定。
在Oracle Instant Client的下载页面:
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
在这个页面下,有很多有用的信息,比如:
有一个OCCI相关的链接,点进去,找到如下:
点击OCCI for Linux/Windows:
这里居然也有相关的信息,但是遗憾的是,它是有11g版本的,没有12g版本的,难道是Oracle忘记更新了?也许还有更简单的解决方法吧!这样略显坑爹!
- VS2010+Oracle12g C++开发环境搭建笔记
- opencv+cmake+vs2010开发环境搭建笔记
- 搭建VS2010,OpenGL开发环境
- VS2010+Qt开发环境搭建
- vs2010+opencv开发环境搭建
- coco2dx+vs2010 开发环境搭建
- 搭建vs2010 boost开发环境
- vs2010汇编开发环境搭建
- 搭建vs2010 boost开发环境
- vs2010 搭建驱动开发环境
- 搭建经典C开发环境学习笔记
- 搭建QT和VS2010集成开发环境
- QT 5.0.2 VS2010开发环境搭建
- VS2010+QT4.7开发环境搭建
- win7+vs2010搭建directshow sdk开发环境
- QT与VS2010集成开发环境搭建
- QT 5.0.2 VS2010开发环境搭建
- 亲测 OGRE1.8 VS2010开发环境搭建
- Hive数据去重
- 二叉树ADT_BinaryTree
- tomcat学习笔记(一)-导入tomcat源码项目
- ubuntu设置静态ip
- java eclipse初次使用前的配置技巧汇总
- VS2010+Oracle12g C++开发环境搭建笔记
- el表达式跟ognl表达式的区别
- C++中虚函数是如何实现,多重继承中虚函数的实现
- 使用opengl绘制五角星图形
- 33款可用来抓数据的开源爬虫软件工具
- 某考试题~低头一族 [好题](简要的数学推倒)[四星]
- DNF辅助飞机适合 搬砖 升级 异界 魂图 安图恩
- 汉诺塔问题(C实现)
- LeetCode 083 Remove Duplicates from Sorted List