在Windows上基于VS2013搭建IT++库通信系统仿真平台(it++ 4.3.1&&vs2013)

由于MATLAB仿真比较慢,还是C/C++快一些,所以想到了用IT++通信系统仿真库,折腾了两天总算安装上了。本文是参见 http://herve.boeglen.free.fr/itpp_windows/ 这个网站说明安装的,在此说一声感谢。本文主要是记录一下安装过程,便于下次安装。

顺便说一下,最开始想用MingW和Codeblocks搭建,但是使用http://starshine.pixnet.net/blog/post/23040073和https://sites.google.com/site/yenhuanli/how-to-build-it-in-windows所说的方法全都没有成功,it++编译的时候始终找不到lapack库和fftw3库,只好放弃。

后来尝试使用VISUAL STUDIO 2010安装,也没成功,搜索了一下发现,一定要使用VS2010 SP1,而我下载的并不是这个版本。

再说说Lapack库和Blas库,官方网站上提供的这两个库的windows版本的lib和dll都不能使用,编译都没法通过,本来想下载INTEL的MKL库,但是INTEL实在太傲娇了,要收费不说,以科研用途申请了免费版,但是安装的时候给的序列号始终通不过验证,完全没法安装,也只好放弃了。最后还是选择使用VS2013与IT++ 4.3.1结合的方案。

如上就是我安装IT++库的经验教训。下面进入正题。

先安装CMAKE, https://cmake.org/files/v3.5/cmake-3.5.0-win32-x86.msi ,并在最后选择添加到系统路径里


下载IT++库,本文使用的是4.3.1版, https://sourceforge.net/projects/itpp/files/latest/download?source=files

解压到IT++库到C盘,把itpp-4.3.1文件夹放在C盘根目录。

由于VS2013支持C99标准( http://blogs.msdn.com/b/vcblog/archive/2013/07/19/c99-library-support-in-visual-studio-2013.aspx ),为了消除C4273警告,需复制 CMakeLists.txt
c:\itpp-4.3.1替换原文件。

由于VS2013 支持C++11标准,必须把#include <algorithm>这条语句添加到如下文件的头文件声明里。下列文件都在C:\itpp-4.3.1\itpp文件夹里,可采用文件搜索找出来之后修改保存。

-matfunc.h

-eigen.cpp

-ls_solve.cpp

-qr.cpp

-svd.cpp

- svec.h

在c:\itpp-4.3.1里新建文件夹lib,把如下文件复制到 c:\itpp-4.3.1\lib里,blas_win32_MTd.lib, lapack_win32_MTd.lib, blas_win32_MT.lib, lapack_win32_MT.lib 和 libfftw3-3_win32.lib,这几个文件链接在此: http://pan.baidu.com/s/1jHdVnoU

fftw3库头 文件复制到 c:\itpp-4.3.1\itpp文件夹里。

在c:\itpp-4.3.1里新建一个文件夹build,打开命令提示符(开始-在“所有程序”下面的搜索框里输入“CMD” 并回车)进入到C:\itpp-4.3.1\build文件夹(在命令提示符里输入cd C:\itpp-4.3.1\build 并回车)。之后输入如下命令:

[html]  view plain copy
  1. cmake .. -DFFT_VENDOR=FFTW3 -DFFT_LIBRARIES=C:\itpp-4.3.1\lib\libfftw3-3_win32.lib -DFFT_INCLUDES=C:\itpp-4.3.1\itpp -DLAPACK_LIBRARIES=C:\itpp-4.3.1\lib\lapack_win32_MTd.lib -DBLAS_LIBRARIES=C:\itpp-4.3.1\lib\blas_win32_MTd.lib  
运行完成后 就是下图这个样子。





之后打开C:\itpp-4.3.1\build文件夹,找到itpp.sln文件,双击打开,就会出现VS2013的界面,如下图所示


找到transform.cpp,将下图紫色椭圆处修改为#include <itpp/fftw3.h>


先将模式改为debug模式


点项目-属性,更改如下



再改数据库文件名


改变导入库文件名


点生成解决方案或者重新生成解决方案,只要运行没有报错就可以得到如下文件


复制所得到的itpp_debug_win32.lib文件到 C:\itpp-4.3.1\lib ;之后在32位系统中复制 itpp_debug_win32.dll 文件到C:\Windows\System32 ,在64位系统里复制itpp_debug_win32.dll 文件到 C:\Windows\SysWOW64 

现在改变模式到Release



点项目-属性,改变输出目录名和目标文件名


改变附加依赖项,主要是把MTd改成MT


改变导入库文件名


点生成解决方案或者重新生成解决方案,只要运行没有报错就可以得到如下文件


复制所得到的itpp_rel_win32.lib文件到 C:\itpp-4.3.1\lib ;之后在32位系统中复制 itpp_rel_win32.dll 文件到C:\Windows\System32 ,在64位系统里复制itpp_rel_win32.dll 文件到 C:\Windows\SysWOW64 

下载 blas_win32_MTd.dll, lapack_win32_MTd.dll, blas_win32_MT.dll, lapack_win32_MT.dll 和 libfftw3-3_win32.dll五个文件,文件地址在 http://pan.baidu.com/s/1mhmEQjm 。将这五个文件在32位系统中复制到C:\Windows\System32
,在64位系统里复制到 C:\Windows\SysWOW64 

仿真环境搭建大功告成,新建IT++项目在下一篇文章介绍。
  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
回答: 根据资料查询,Exchange具有Back Pressure的功能,它监测Exchange的磁盘空间和内存使用量等情况。当磁盘空间不足4G或内存使用超过94%时,会出现452+4.3.1 Insufficient的错误。然而,您查看服务器情况时发现硬盘和内存剩余空间充足,所以出现该错误的原因并不确切。\[1\]根据另一份资料,邮件可能会成为备份中的邮件队列,重新启动Exchange服务器相关的服务也无法解决此问题,您需要重新启动服务器以恢复邮件流。\[2\]另外,您还可以尝试调整内存使用率限制,将PercentagePhysicalMemoryUsedLimit的值从94修改为100来解决问题。\[3\] #### 引用[.reference_title] - *1* *3* [Exchange报错:452 4.3.1 Insufficient system resources](https://blog.csdn.net/Dancen/article/details/119380920)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [452 4.3.1 内存不足 Exchange 2003服务器问题](https://blog.csdn.net/weixin_36448199/article/details/119512348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值