pyinstaller看起来并不会将动态链接库自动打包,所以我们需要告诉pyinstaller要打包哪些动态链接库,步骤如下(假设python文件名为 oracletest.py):

1. 使用pyinstaller -F oracletest.py 打包后会生成一个oracletest.spec文件,我们要修改这个spec文件。

将 a.binaries, 改为

a.binaries+[('oraociei12.dll','C:\\oracle\\instantclient_12_2\\oraociei12.dll','BINARY'),('oci.dll','C:\\oracle\\instantclient_12_2\\oci.dll','BINARY'),('oraons.dll','C:\\oracle\\instantclient_12_2\\oraons.dll','BINARY')],

以上路径需要参照oracle instantclient 的存放目录进行修改。

2. 依照spec文件打包,执行命令如下:

pyinstaller -F oracletest.spec

3.现在打包之后会将动态链接库打包进exe包。因为oracle的这几个动态链接库非常大,所以导致打包完的exe包也非常大。

以上方法参考stackoverflow的解决方案,经个人实测发现里面提到的动态链接库还不够,我这里用到的动态链接库如上文所述。

参考链接:https://stackoverflow.com/questions/36478831/pyinstaller-cx-oracle-interfaceerror-unable-to-acquire-oracle-environment-hand/36483476

最新文章

  1. cmd常用命令 和 sql server相关基础
  2. 有用C函数集锦
  3. UIWebView 加载网页、文件、 html-b
  4. settimeout vs setinternal
  5. angularJS随笔
  6. Swift纯代码走进UICollectionView
  7. IDEA下Spring Boot的快速搭建
  8. 关于Vue的路由、脚手架笔记
  9. Spring-depends on
  10. Caused by: java.lang.ClassNotFoundException: org.apache.commons.fileupload.RequestContext
  11. Jquery浅克隆与深克隆
  12. codeforces#410C Mike and gcd problem
  13. BPDU报文(传统STP)
  14. nodejs 利用zip-local模块压缩文件夹
  15. selenium操作浏览器
  16. Nginx下配置ThinkPhp多入口访问
  17. LeetCode OJ 47. Permutations II
  18. JAVA 16进制转ASCII -- 2018年5月25日 周五
  19. 44. Wildcard Matching *HARD*
  20. Hibernate性能优化之SessionFactory重用

热门文章

  1. 使用layui的form.on绑定select选中事件, form.on()不执行的原因分析
  2. ThinkPHP如何在控制器中调用命令
  3. 哈夫曼编解码压缩解压文件—C++实现
  4. C语言位操作中指定的某一位数置0、置1、取反
  5. Chrome 浏览器光标定位到地址栏
  6. time() 函数时间不同步问题
  7. Hystrix的介绍(断路、降级)
  8. vue中设置全局的css样式
  9. ASP.NET Core分布式项目-2.oauth密码模式identity server4实现
  10. MogliFS与spring mvc结合简单示例