Apollo MPC算法之前使用qpOASES Solver, 现在替换为OSQP,OSQP库主要是解优化问题的库。我现在想移植到自己的嵌入式开发环境中,QSQP具体教程可以参考地址:https://osqp.org/docs/get_started/sources.html#build-from-sources。这里给出怎么解决移植问题,下面是我的移植过程:
1.下载osqp源码,这个在上面地址里面就可以下载,也可以通过git下载,指令如下。
git clone --recursive https://github.com/oxfordcontrol/osqp
2.安装cmake及图像化工具,安装过的忽略这一步。
sudo apt-get install cmake cmake-qt-gui cmake-curses-gui
3.运行cmake的图形化工具cmake-gui
sudo cmake-gui
4.配置gui
选择源代码目录/home/topeet/osqp(就是你下载的osqp源码的位置)
选择Build目录/home/topeet/osqp/qp_build,大家根据自己设置配置编译目录
点击Configure或者Generator
选择Unix Makefiles,
接着选择Specify options for cross-compiling,
点击Next,接着开始配置交叉编译环境的信息
Operating System填写arm-inux
C Compilers填写您交叉编译器arm-linux-gcc命令的地址
C++ Compilers填写arm-linux-g++的地址
程序库的Target Root填写交叉编译器的bin目录,
然后点击Finish,您的配置信息就出来的
然后进入/home/topeet/osqp/qp_build中进行如下指令编译安装库:
sudo make
sudo make install
如果缺少东西就
解决
修改/home/topeet/osqp/qp_build目录下的CMakeCache.txtCMAKE_EXE_LINKER_FLAGS
原来为空,加上-lpthread -lrt