安装SCIP
安装scip遇到一些错误
安装步骤
- https://www.scipopt.org/ ,官网找的对应版本(linux‘)建议下载scipoptsuite.tgz;
- 安装命令;`
cd scipoptsuite-8.0.3
mkdir build
cd build
cmake …
make
在这里的cmake步骤出现报错,从官网推荐的安装相关包,命令如下:
apt-get install wget cmake g++ m4 xz-utils libgmp-dev unzip zlib1g-dev libboost-program-options-dev libboost-serialization-dev libboost-regex-dev libboost-iostreams-dev libtbb-dev libreadline-dev pkg-config git liblapack-dev libgsl-dev flex bison libcliquer-dev gfortran file dpkg-dev libopenblas-dev rpm
还是出错,主要报错代码如下图:
Could NOT find TBB: Found unsuitable version “2017.0”, but required is at
least “2018” (found TBB::tbb;TBB::tbbmalloc)
解决的方法是:
首先终端进入/usr/local目录,
wget https://github.com/intel/tbb/releases/download/2019_U6/tbb2019_20190410oss_lin.tgz
tar -zxvf tbb2019_20190410oss_lin.tgz
cd tbb2019_20190410oss/bin
source tbbvars.sh intel64 linux auto_tbbroot
cd ../examples/task/tree_sum
make
./tree_sum
此段代码来自https://blog.youkuaiyun.com/qccz123456/article/details/85332779
第一句代码终端运行可能会显示被拒绝连接,解决办法是直接点击该网址去下载。
出现新的问题
再次 cmake …出现:

先解决了最后一个报错,CMake的版本问题,需要3.11.0及以上版本。
- 卸载原有cmake
sudo apt-get remove cmake
- 下载新的,这里提供一个镜像网址,可以选择下载cmake-3.25.1tar.gz
- 解压并进入
tar -zxvf cmake-3.25.0.tar.gz
cd cmake-3.25.0
- 执行bootstrap
./bootstrap
出现下面的错误
更新g++
sudo apt-get install g++
重新运行上述指令再出错如下
解决缺少库问题
sudo apt-get install libssl-dev
重新运行上述指令
成功如图
- 编译构建
make
sudo make install
安装完毕
再次cmake ..
提示找不到cmake,人麻了
因为直接使用cmake系统回到默认的/usr/bin中去寻找,但是src中安装的cmake是在/usr/local/bin中,所以当然不会找到。解决方法:
做一个链接即可:ln -s /usr/local/bin/cmake /usr/bin
然后使用/usr/local/bin/cmake进行编译
再次cmke ..
,又有了新的错误
CMake Warning at soplex/CMakeLists.txt:194 (message):
Warning: The multiprecision and quadprecision features are disabled
with Boost versions older than 1.70. Found Boost version is 1.65.1
认为是cmake版本新了,不支持以前的Boost版本了,下载新的Boost
实在不想搞了,最后找到一个指令,cmake … -DAUTOBUILD=on
大概意思是,它会自动停用这个包,然后我直接把前面的TBB卸载,运行cmake .. -DAUTOBUILD=on
最后安装成功了,最后一步make install前面要加sudo给权限。
配置环境变量
vim打开~/.bashrc文件,在最后一行添加:
export PATH=$PATH:~/自己的路径/scipoptsuite-8.0.8/build/bin/
终端中输入:
source ~/.bashrc
测试:
终端输入:
scip
小插曲,有报错。。
scip: error while loading shared libraries: libtbb.so.12: cannot open shared object file: No such file or directory
借鉴方法但是我的libtbb.so.12不在/usr/lib中,通过指令sudo find -name libtbb*
找到了位置,然后链接的方法解决了问题。
scip成功!