匪夷所思的 Gurobi 安装

大意是在 Matlab 命令行安装 Gurobi 的时候提示架构不对,看了一下安装文件的源码:

% We don't require GUROBI_HOME on Mac or Linux. Get gurobiarch from path.
gurobiarch = gurobipath;
gurobiarch(end) = [];
slashes = strfind(gurobiarch, fs);
gurobiarch = gurobiarch(slashes(end-1)+1:slashes(end)-1);

关爱智障的眼神。

(解释一下,因为我把 Gurobi 安装到 /opt/gurobi 去了,但是似乎安装程序默认我们应该安装到一个类似于 /***/gurobi752/linux64/ 的地方)


顺便吐槽一下 CVX 。

申请 academic license 的时候需要输入(网卡的)特征编码,但是在我这里的发行版上 cvx_version 并不显示出来……继续读源码:

%%%%%%%%%%%%%%%%
% License file %
%%%%%%%%%%%%%%%%

if isoctave,
    if ~isempty( cvx___.license ),
        fprintf( 'CVX Professional is not supported with Octave.\n' );
    end
elseif cvx___.jver < 1.6,
    fprintf('       WARNING: full support for CVX Professional licenses\n' );
    fprintf('       requres Java version 1.6.0 or later. Please upgrade.\n' );
elseif exist( 'cvx_license', 'file' ),
    cvx_license( args{:} );
end

重下带 gurobi 和 mosek 的 standard 版本,把 cvx_license.p 文件复制过去就可以了。

关爱智障的眼神*2。