缘起

在这里插入图片描述
cvxpy 不能解2阶以上的 半定规划!要安装 blas+lapack!

那就装吧。。

参考帖子:

安装 MinGW-w64

https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/mingw-w64-install.exe

在这里插入图片描述

下载安装

在这里插入图片描述
安装完成
在这里插入图片描述
点击 run terminal,已经安好了 gcc ,g++,gfortran 等等
在这里插入图片描述
实际所在目录
在这里插入图片描述
下面设置环境变量,把上图所示的文件夹加入 Path
新建 LIBRARY_PATH 变量,值设为 …\path\to\mingw64\lib
新建 C_INCLUDEDE_PATH 变量,值设为 …\path\to\mingw64\include;

测试编译

#include <iostream>
using namespace std;

int main( int argc, char *argv[] )
{
	cout << "Hello World!" << endl;
	return 0;
}
g++ hello.cpp -o hello.exe

测试通过

安装 BLAS 和 LAPACK

LAPACK,Linear Algebra PACKage,是一以Fortran编程语言写就,用于数值计算的函式集。 LAPACK提供了丰富的工具函式,可用于诸如解多元线性方程式、线性系统方程组的最小平方解、计算特征向量、用于计算矩阵QR分解的Householder转换、以及奇异值分解等问题。

http://netlib.org/lapack/lapack.tgz

BLAS,Basic Linear Algebra Subprograms,即基础线性代数子程序库,里面拥有大量已经编写好的关于线性代数运算的程序。源码可以从 http://www.netlib.org/blas/ 下载,但实际上LAPACK中已经包含了BLAS。

安装 CMAKE

因为需要源码安装,所以只好用 cmake

https://cmake.org/download/

在这里插入图片描述

使用 cmake 编译 lapack

解压 lapack,重命名 make.inc.example => make.inc
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
有些关于 fortran 的连接库缺失,估计是安装 mingw64 的时候少了点东西

那就只好重新装一个 mingw32 好了

重装 MinGW

下载了一个 mingw-get-setup.exe

这个看起来专业一点,给你提供了安装选项

在这里插入图片描述
装好之后修改 PATHLIBRARY_PATHC_INCLUDEDE_PATH
在这里插入图片描述

用 cmake 编译 lapack

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
勾选上面 3 个框后 generate
在这里插入图片描述
done!

进入 build 文件夹, mingw32-make
make 失败
马德劳资不装了!

问题解决

自己下了一个 scs wheel 装上了
https://www.lfd.uci.edu/~gohlke/pythonlibs/#scs

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐