python4delphi import lxml pandas 出错的小结
环境:
1.win10 64位
2.delphi xe8
3.python2.7
4.python4delphi (svn 2015-03-21 发布的83版本号)
5.lxml 3.4.4(通过pip 安装的)
6.pandas 0.16.2
错误现象:1.找不到指定的DLL
2.初始化dll失败
3.ImportError: C extension: DLL load failed: 找不到指定的模块。
解决:
1、lxml的问题用Anaconda-2.3.0-Windows-x86 里面的lxml替换掉之后就解决了;
估计是mvcrt90.dll的版本问题,两个msvcr90.dll会造成初始化有问题
2、pandas 的ImportError:C extension问题:
pip
has a --global-option
flag
You can use it to pass additional flags to build_ext
.
For instance, to add a -I
flag:
pip install --global-option=build_ext --global-option=--inplace --global-option="-Id:\pandas" pandas
Per-requirement Overrides¶
Since version 7.0 pip supports controlling the command line options given to setup.py
via requirements files. This disables the use of wheels (cached or otherwise) for that package, as setup.py
does not exist for wheels.
The --global-option
and --install-option
options are used to pass options to setup.py
. For example:
FooProject >= 1.2 --global-option="--no-user-cfg" \
--install-option="--prefix='/usr/local'" \
--install-option="--no-compile"
The above translates roughly into running FooProject's setup.py
script as:
python setup.py --no-user-cfg install --prefix='/usr/local' --no-compile
Note that the only way of giving more than one option to setup.py
is through multiple --global-option
and --install-option
options, as shown in the example above. The value of each option is passed as a single argument to the setup.py
script. Therefore, a line such as the following is invalid and would result in an installation error.
# Invalid. Please use '--install-option' twice as shown above.
FooProject >= 1.2 --install
经测试上面的方法没有用。
将生产的程序project4.exe复制到D:\Anaconda文件夹下就没有报错了,不知道为什么
python4delphi 调用Anaconda的python27.dll且路径里面只要包含Anaconda的Lib和DLLs就可以正常使用了,
但是python27.dll换成原来装的python的就不行,一直报ImportError:C extension问题
另外一个很重要的注意事项是版本问题,Python扩展包和Python的版本严格相关,不同版本的Python,其扩展包的版本也不同。
最后一个注意事项是32位和64位不要搞混了,所有扩展包都分32位和64位两种版本。
。
最新文章
- ThinkPHP 3.2.3 加减乘法验证码类
- QStandardItemModel-Delegate
- LUA5.3的BNF范式学习笔记
- libxml2 移植 arm9
- hive笔记(自学整理的)
- HDU 4282 A very hard mathematic problem 二分
- VxWorks 6.9 内核编程指导之读书笔记 -- VxWorks Kernel application (二)
- php 添加 redis 扩展模块
- Android AlarmManager报警的实现
- 【高德地图API】如何获得行政区域?如何制作行政规划图?
- C#基础之------委托
- centos 7 破解密码
- Linux基本命令总结(四)
- Eigen子矩阵操作
- Codeforces round 1098
- 【URLOS应用开发基础】10分钟制作一个nginx静态网站环境应用
- android中实现本地广播
- idea新用法
- OpenGL ES画板
- 用http.get()简单实现网络验证防止客户不给尾款_电脑计算机编程入门教程自学