美文网首页我爱编程
golang windows下 访问oracle数据库

golang windows下 访问oracle数据库

作者: 斗破苍穷 | 来源:发表于2017-03-03 17:57 被阅读309次

    一.系统环境

    1.win7 64位

    2.go 1.8

    3.oracle  SDK版本 12.1

    4.mingw64位

    二、安装步骤

    1.安装go1.8,参照网上的教程

    2.下载oracle 的sdk和运行库 

    3.安装mingw64和pkg-config.exe,将pkg-config拷贝到mingw64的bin目录,pkg-config是编译go-oci8的时候需要用到的。

    三、配置

    1.修改oci8.pc文件,存入mingw64的lib/pkgconfig目录

    2.修改PKG_CONFIG_PATH为E:\mingw-w64\mingw-w64\x86_64-4.9.2-posix-seh-rt_v3-rev1\mingw64\lib\pkgconfig 

    四、重新编译oci.lib文件

    1.由于oracle提供的oci.lib文件是针对vs的,如果链接到这个oci.lib后,会出现go程序直接奔溃,而且没有任何提示信息。我开始一直找不到是什么问题,后来直接写了一个c调用的数据库接口的小程序,用mingw的gcc来编译和链接,发现也会崩溃,由此定位到是链接库的问题

    2.参考国外一个哥们的做法如下

    2.1 gendef oci.dll 先产生一个oci.def文件 (gendef是mingw64自带的)

    2.2 dlltool -D oci.dll -d oci.def -l liboci.a 产生liboci.a的静态文件

    3. 最后编译go-oci8的时候就链接这个新产生的静态文件就可以了。

    相关文章

      网友评论

        本文标题:golang windows下 访问oracle数据库

        本文链接:https://www.haomeiwen.com/subject/qloqwttx.html