win8.1安装cvxopt

本文指导读者从Python官网下载安装Python2.7.5版本,通过MinGW编译器实现C语言编程环境搭建,进而下载并编译BLAS、LAPACK等数学库,最终安装CVXOPT用于解决优化问题,整个过程详细记录了环境配置步骤及常见问题解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

出处:http://www.cnblogs.com/hpblogs/p/4041540.html


  1. 从www.python.org下载并安装Python。接下来,使用Python 2.7.5(32bit)版本(注意:64位win 7系统也可以直接安装).
  2. 下载并安装MinGW编译器(www.mingw.org)
    • 下载并运行MinGW installer
    • 选择安装C编辑器(C compiler)、Fortran编译器(Fortran compiler)以及MSYS Basic System
    • 打开环境变量,设置环境变量,变量名为PATH,变量值为c:\Python27;c:\MinGW\bin;c:\MinGW\msys\1.0\bin。如下图所示
    •     
  3. 下载并编译BLAS
    • 下载blas.tgz,解压缩到BLAS文件夹
    • 进入命令行并切入到BLAS文件夹中
    • 输入命令行
      • sed 's/_LINUX/_WIN/' make.inc -i
      • make && cp blas_WIN.a ../libblas.a
    • 注意:../ 表示当前目录的上一级目录
  4. 下载并编译LAPACK
    • 下载lapack.tgz,解压缩到LAPACK
    • 进入命令行并切入到LAPACK文件夹
    • 输入命令行如下:
      • cp make.inc.example make.inc
      • make lapacklib && cp liblapack.a ..
    • 注意:.. 表示当前目录的上一级目录
  5. 下载并安装CVXOPT
    • 下载CVXOPT,并解压到cvxopt-1.1.7下
    • 拷贝第3、4步生成的libblas.a和liblapack.a到目录cvxopt-1.1.7/src下
    • 编辑cvxopt-1.1.7/下setup.py文件,设置环境变量BLAS_LIB和BLAS_LIB_DIR:
      • BLAS_LIB = [‘blas’,’gfortran’]
      • BLAS_LIB_DIR = ‘.’
    • 使用下面的命令从\Python27\Lib\distutils\cygwinccompiler.py中移除‘-mno-cygwin’,
    • 在cvxopt-1.1.7文件夹下运行如下命令
      • python setup.py build --compiler=mingw32
      • python setup.py install

      • 最终在 ..\Python27\Lib\site-packages 下看到了cvxopt-1.1.7-py2.7.egg-info,并且用ipython能够顺利的import cvxopt.  DONE!!!
    • python的编译方式改回来
      • mv c:\Python27\Lib\distutils\cygwinccompiler.py.bak c:\Python27\Lib\distutils\cygwinccompiler.py
  6. OK
这里需要补充一下,我遇到的问题:

在进行最后的python setup.py build --compiler=mingw32时,提示我.\src\C\SuiteSparse\SuiteSparse_config中的SuiteSparse_config.c里面的 struct timespec t ;是找不到

上网找了一下,发现这个好像是在linux中用到的time.h中定义的,我将cpp和h在vs中构建一下发现,根本就不会编译这一段,所以之间将预定义的那一部分全部注释掉就可以了,不知道mingw为什么回去编译它。反正注释掉就可以了。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值