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博客

相关推荐
前端熊猫39 分钟前
排序算法学习笔记
笔记·学习·排序算法
auspark1 小时前
macos下cocoapods的学习
学习·macos·cocoapods
朔北之忘 Clancy1 小时前
2022 年 12 月青少年软编等考 C 语言五级真题解析
c语言·开发语言·c++·学习·算法·青少年编程·题解
宋隽颢3 小时前
STM32学习【4】ARM汇编(够用)
arm开发·stm32·学习
我哪天都没空3 小时前
【蓝桥杯嵌入式】各模块学习总结
笔记·学习·蓝桥杯
ILUUSION_S3 小时前
学习路程五 向量数据库Milvus操作
数据库·python·学习·langchain·milvus
谏君之3 小时前
编写第一个 C++ 程序 – Hello World 示例
开发语言·c++·单片机·学习
LuckyLay4 小时前
Golang学习笔记_40——模版方法模式
笔记·学习·设计模式·golang·模板方法模式
s_little_monster4 小时前
【Linux】进程间通信之匿名管道
linux·运维·服务器·数据库·经验分享·笔记·学习
EnigmaCoder6 小时前
C语言【进阶篇】之指针——涵盖基础、数组与高级概念
c语言·开发语言·学习