admin管理员组文章数量:1571371
部分转自@老王家的编程小白的文章非线性约束优化数值库Nlopt在vs2013、2015中配置
nlopt库
C/C++上类似MATLAB中fmincon的一个非线性优化库,据说求解效果很不错。
步骤
1. 在nlopt官网上下载
http://ab-initio.mit.edu/wiki/index.php/NLopt_on_Windows
【注意:由于后来在vs环境下是用win32平台编译的,所以要下载32bit版本;如果你在vs环境下是用X64平台编译,则下载64bit版本;一定要注意这里不是根据电脑的版本或安装vs的版本来选择,否则后面调试会出现如下问题】
会发现里面有提示:
This .zip archive contains DLL libraries and the associated header (.h)
and module-definition (.def) files of NLopt compiled for Win64.In order to link to this .dll files from Visual C++, you need to
create a .lib “import libraries” for it, and can do so with the “lib”
command that comes with VC++. In particular, run:
lib /def:libnlopt-0.def
大概是要使用VC的命令 lib /def:libnlopt-0.def
2. 在开始菜单里点击vs编译器工具
根据自己下载的32或64位版本,选择命令工具。
3. 输入你所下载的dll32文件夹的路径)
例如
cd F:\nonlinearoptimal\nlopt-2.4.2-dll32
输入:lib /def:libnlopt-0.def
运行完成之后,就会在该dll32文件夹内生成.lib文件
4. 打开vs2015,新建一个空项目,然后对其项目属性进行配置,方法如同【在vs中配置第三方库】
要想调用该库时,将dll32文件下的头文件.h/.hpp也加入到该项目中
5. 最后将dll32文件下的.dll文件复制到你所安装的vs2013或vs2015的目录下,找到vc文件夹下的bin文件夹。【以vs2015为例,vs2013安装文件则是12.0】
然后对示例程序进行编译即可成功。
【示例程序以及说明文档已上传到CSDN】
http://download.csdn/download/dshl9595/9933443
BTW: 关于库的路径的修改,可以直接使用相对路径,具体做法:
例如你的工程文件(test.vcproj)所在目录路径为:
F:\MyPro\lib\test
该工程中包含的源文件要包含一个头文件,该头文件所在路径如下:
F:\MyPro\bin
则我们可以从工程文件test.vcproj所在目录为起点向上回退到包含你所需要头文件的include文件夹所在的目录目录,你回退了几次就需要几个”..”符号。
这里的相对路径设置如下:
..\..\bin
版权声明:本文标题:windows上安装nlopt库使用lib def:... 命令 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1727690301a1125787.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论