【工具】win10+vs2019项目配置调用ipopt非线性求解器

由于项目需要在windows下用C++开发且调用ipopt,ipopt官方文档展示的在Windows下的编译比较复杂,一些依赖库较难下载配置。好在已有了编译好的链接库文件,折腾一晚上后能用了,简单记录。总结如下,预计10分钟即可完成。

一、下载

ipopt源代码(仅需example代码测试用)和编译好win平台结果:

Releases · coin-or/Ipopt (github.com)

这俩就行

二、解压配置

1.找地方解压 Ipopt-3.14.10-win64-msvs2019-md

目录是下图这样的,bin\内是动态链接库dll和exe文件,include\内是库的头文件,lib\内是lib文件,下面分别在vs2019的已有项目中配置添加。

 

例如解压后文件夹名为 Ipopt-3.14,将其拷贝到vs项目路径下,通过相对路径配置。也可以放在自定义路径,让多个项目共同使用。

 头文件

项目右键->属性->配置属性->VC++目录->常规->包含目录,添加上 .\Ipopt-3.14\include\coin-or

也可以在  项目右键->属性->配置属性->C/C++->常规->附加包含目录,效果相同。

这样可以用 #include<XXX.hpp> (<>在包含目录中查找头文件,""先在源文件所在目录中查找,如果没有再去包含目录查找,详见关于C语言include尖括号和双引号的对话

否则只能 #include"Ipopt-3.14/include/coin-or/IpIpoptApplication.hpp" ,当然这是 Ipopt-3.14文件夹在项目路径下时。

 静态库lib

项目->资源文件右键->添加->现有项 ,选择四个Ipopt-3.14\lib\内四个lib文件添加。

 动态库dll

项目右键->属性->配置属性->调试->环境,添加 PATH=.\Ipopt-3.14\bin

 2.找地方解压 Ipopt-releases-3.14.10

打开Ipopt-releases-3.14.10\examples\Cpp_example,复制cpp_example.cpp、MyNLP.cpp、MyNLP.hpp三个文件到项目目录下,并添加进项目中(右键添加现有项)

最后检查项目中没有其他main函数,debug x64下编译生成,运行成功。

后续打算结合CppAD使用。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值