PSOPT在Ubuntu22.04下的安装

求解器pospt的原链接如下:

PSOPT/psopt: PSOPT Optimal Control Software (github.com)

在该文件夹下提供了安装的指导文件,文件内容如下:


在 Ubuntu 22.04 中,如果按照适用于 Ubuntu 20.04 的说明执行 PSOPT 代码,目前会报告与 adolc 库相关的运行时错误。以下是在 Ubuntu 22.04 下安装 PSOPT 所需的具体说明。

首先,应在终端窗口运行以下程序,安装一些必要的软件包:

  1. sudo apt-get install git
  2. sudo apt-get install cmake
  3. sudo apt-get install gfortran
  4. sudo apt-get install g++
  5. sudo apt-get install libboost-dev
  6. sudo apt-get install libboost-system-dev
  7. sudo apt-get install coinor-libipopt-dev
  8. sudo apt-get install gnuplot
  9. sudo apt-get install libeigen3-dev
  10. sudo apt-get install libblas-dev
  11. sudo apt-get install liblapack-dev

其次,运行以下命令下载、编译并安装 adolc 和 ColPack。

安装 ColPack

1. 下载 ColPack 源代码

进入一个工作目录并下载 ColPack 源代码:

复制代码
cd $HOME/ThirdParty
wget http://archive.ubuntu.com/ubuntu/pool/universe/c/colpack/colpack_1.0.10.orig.tar.gz
tar zxvf colpack_1.0.10.orig.tar.gz
2. 编译和安装 ColPack

进入 ColPack 源代码目录并编译安装:

复制代码
cd ColPack-1.0.10
./autoconf.sh
./configure
make
sudo make install
3. 确认安装

确认 ColPack 的库文件和头文件是否在正确的位置:

复制代码
ls /usr/local/lib/libColPack.so
ls /usr/local/include/ColPack

安装 ADOL-C

1. 下载 ADOL-C 源代码

确保你已经在工作目录中有 ADOL-C 源代码。

2. 配置 ADOL-C

通过设置 CPPFLAGSLDFLAGS 环境变量明确指定 ColPack 的路径来配置 ADOL-C:

复制代码
cd $HOME/ADOL-C-2.6.3
CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure --enable-sparse --with-colpack=/usr/local

3. 编译 ADOL-C 和安装ADOL-C

复制代码
make
sudo make install

4.确认安装

复制代码
ls /usr/local/lib/libadolc.so
ls /usr/local/include/adolc

安装psopt:

先安装其他依赖库:

复制代码
sudo apt-get update
sudo apt-get install git cmake gfortran g++ libboost-dev libboost-system-dev coinor-libipopt-dev gnuplot libeigen3-dev libblas-dev liblapack-dev

下载代码并进入构建目录:

复制代码
cd $HOME
git clone https://github.com/PSOPT/psopt.git
cd psopt
mkdir build
cd build

配置:

复制代码
cmake -DBUILD_EXAMPLES=ON ..

编译安装:

复制代码
make
sudo make install

验证安装:

复制代码
cd ~/MyOpt/psopt/examples/goddard/build
cmake ..
make
./goddard

经过上述步骤,即可完成对psopt的安装,可以顺利使用。

注:经过上述安装,adolc库在我电脑中位置是:

  • 库文件 :在 /home/gz/adolc_base/lib64
  • 头文件 :在 /home/gz/adolc_base/include/adolc

另外参考:

一、最优控制软件包PSOPT安装方法_依赖库 hsl(通常是high speed library的简写,用于线性代数和数值优化的库)没有正-CSDN博客

最优控制理论 七、关于数值求解算法的总结及软件分享_最优控制算法-CSDN博客

相关推荐
春风解人意34 分钟前
从零开始学习嵌入式P29----线程间的通信
c语言·嵌入式硬件·学习
kmomo..35 分钟前
Linux 进程学习笔记
linux·笔记·学习
白猫不黑37 分钟前
运维如何转安全(个人经验篇)
运维·学习·安全·web安全·网络安全·信息安全
kyrie_sakura1 小时前
python学习笔记 7--- 文件(IO)操作
笔记·python·学习
xiaoxiangsiyan1 小时前
网络智能化转型核心模块全解析
运维·服务器·网络·数据库·学习·架构·php
minglie12 小时前
espidf的iic波特律动oled
学习
MartinYeung52 小时前
[论文学习]智能合约不变式防御网络犯罪
网络·学习·智能合约
xx~t2 小时前
嵌入式学习——进程与线程2
linux·c语言·学习·进程与线程
我爱cope2 小时前
【计算机网络 | 网络层10:OSPF 与 BGP:自治系统内部和互联网之间如何路由?】
网络·学习·计算机网络·智能路由器
白猫不黑2 小时前
网络空间安全/信息安全专业学习规划(超级详细版)
运维·学习·安全·web安全·网络安全·信息安全