旧文备份:windows下编译和使用IT++
1.下载IT++最新版:<a href="http://sourceforge.net/projects/itpp/">http://sourceforge.net/projects/itpp/</a>目前版本是4.0.6;下载intel 数学库 MKL:<a href="http://www.intel.com/cd/software/products/asmo-na/eng/307757.htm">http://www.intel.com/cd/software/products/asmo-na/eng/307757.htm</a>目前版本是10.1(如果使用AMD的CPU下载ACML),该库收费,可下载一个月的评估版试用。
2.安装MKL
3.解压缩IT++,在其win32子目录下有VC的工程,双击文件 itpp_mkl.sln,进入VS2005 IDE环境。
4.菜单 工具》选项》项目和解决方案》VC++目录;可执行文件中添加MKL可执行文件目录(C:\Program Files\Intel\MKL\10.1.1.022\ia32\bin);包含文件中添加MKL头文件目录(C:\Program Files\Intel\MKL\10.1.1.022\include);库文件中添加MKL库访问路径(C:\Program Files\Intel\MKL\10.1.1.022\ia32\lib).
5.编译工程,出现以下错误提示:
------ 已启动生成: 项目: itpp_mkl, 配置: Release Win32 ------
正在编译...
transforms.cpp
..\itpp\signal\transforms.cpp(74) : error C2589: '(' : illegal token on right side of '::'
..\itpp\signal\transforms.cpp(74) : error C2143: syntax error : missing ';' before '::'
..\itpp\signal\transforms.cpp(90) : error C2589: '(' : illegal token on right side of '::'
..\itpp\signal\transforms.cpp(90) : error C2143: syntax error : missing ';' before '::'
..\itpp\signal\transforms.cpp(107) : error C2589: '(' : illegal token on right side of '::'
..\itpp\signal\transforms.cpp(107) : error C2143: syntax error : missing ';' before '::'
..\itpp\signal\transforms.cpp(131) : error C2589: '(' : illegal token on right side of '::'
..\itpp\signal\transforms.cpp(131) : error C2143: syntax error : missing ';' before '::'
项目 : warning PRJ0018 : 未找到下列环境变量:
其原因是intel MKL 10.1版本比之前有所改动,造成与IT++匹配问题,找到..\itpp\signal\transforms.cpp文件,在其中加入一行:
#ifndef _MSC_VER
# include <itpp/config.h>
#else
# include <itpp/config_msvc.h>
#endif
#if defined(HAVE_FFT_MKL)
namespace mkl
{
# include <mkl_dfti.h>
<--在这里添加:# undef DftiCreateDescriptor
}
#elif defined(HAVE_FFT_ACML)
namespace acml
{
# include <acml.h>
6.再编译,会通过,同时在IT++ 的win32子目录下生成lib目录,其中根据debug/release选择会产生itpp_debug.lib/itpp.lib,至此IT++ lib文件生成,可以使用了。
7.现在,通过例程示范,使用IT++ lib,首先在VC环境中指定相关路径。工具》选项》项目和解决方案》VC++目录,在包含文件中再加入IT++头文件路径(E:\itpp-4.0.6);在库文件中加入刚才生成的lib文件路径(E:\itpp-4.0.6\win32\lib)。
8.新建项目工程,选择win32控制台程序,命名test,在IT++tests置目录下随便选择一个测试文件,比如filter_test.cpp,导入该项目。
9.右键test项目属性》链接器》输入 中附加依赖项,加入 itpp.lib mkl_c_dll.lib,在忽略特定库中添加uuid.lib。
10选择release编译,执行,会看到控制台窗口执行测试程序。
(2009.3.2)
旧文备份:windows下编译和使用IT++的更多相关文章
- Windows下编译objective-C
Windows下编译objective-C 2011-08-31 14:32 630人阅读 评论(0) 收藏 举报 windowscocoa工具objective clibraryxcode 目录 ...
- windows下编译和安装boost库
boost是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库. 获取方式 boost提供源码形式的安装包,可以从boost官方网站下载,目前最新版本是1.59.0. 本机上正好有boos ...
- [分享]windows下编译squid的经验(转)
squid是什么我这里就不说了,这不是本文的重点,总之它是一个集:代理.加速.缓存.负载均衡.防盗链.访问控制等多功能的一个超牛X开源软件,如今已经广泛应用于很多领域.对于缓存和加速这一领域,如今各大 ...
- Windows下编译最新版ChezScheme
据说ChezScheme是最快的神级编译器,一秒钟几百万行,王垠说的2秒内编译自身绝不是夸张(看这里<揭秘Chez Scheme>,Scheme中文社区).ChezScheme由美国印第安 ...
- [转] Windows下编译OpenSSL
简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...
- 在Windows下编译FFmpeg详细说明
MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNC工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时 MinGW,即 Minimalist GNU F ...
- 如何在WINDOWS下编译BOOST C++库 .
如何在WINDOWS下编译BOOST C++库 cheungmine 2008-6-25 写出来,怕自己以后忘记了,也为初学者参考.使用VC8.0和boost1.35.0. 1)下载boost ...
- 在Windows下编译OpenSSL(VS2005和VC6)
需要说明的是请一定安装openssl-0.9.8a . openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...
- windows下编译java源文件的编码错误
import java.util.Arrays;public class ArrayAsAReference{ public static void main(String[] args) { int ...
随机推荐
- 大型分布式java应用与SOA
1.基于消息方式.远程调用方式的架构带来的问题: 1.1 系统多元化的问题 [解决]: 对共用逻辑部分进行抽象: 1.2 系统访问量.数据量上涨后带来的问题 [解决]: 拆分系统: 1.3 在构建共用 ...
- tomcat异常[0]--java.lang.ClassNotFoundException: org.apache.taglibs.standard.tlv.JstlCoreTLV
自己建了一个项目,启动项目的时候,发生了java.lang.ClassNotFoundException: org.apache.taglibs.standard.tlv.JstlCoreTLV异常. ...
- springboot 启动的java进程默默终止
首先说明这是一个灵异事件......... 场景1 :把之前用map实现的缓存用Redis重构,高高兴兴上线更新,10 分钟后,老板告诉我,项目停了,what ??? 像我这么帅气,英俊,聪明的人,更 ...
- DRF-->1 序列化组件的使用和接口设计---get
定义序列化器(本质就是一个类),一般包括模型类的字段,有自己的字段类型规则.实现了序列化器后,就可以创建序列化对象以及查询集进行序列化操作,通过序列化对象.data来获取数据(不用自己构造字典,再返回 ...
- 闲里偷忙的CPU-某个kwoker进程忙
https://zhuanlan.zhihu.com/p/34311472 有一类比较特殊的CPU使用率问题,这类问题的特点是,系统平均CPU使用率很低,但是个别CPU的使用率非常高.今天借助这个真实 ...
- 关闭ubuntu讨厌的内部错误提示
修改/etc/default/apport 浏览下/etc/init/apport.conf 内容你会发现,控制此服务是否启动的是/etc/default/apport 所以把/etc/default ...
- pat1033. To Fill or Not to Fill (25)
1033. To Fill or Not to Fill (25) 时间限制 10 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 ZHANG, Gu ...
- 自定义Qt组件-通讯模块(P3)
1. 半双工模式实时检测串口 ComHalfDuplex类是为了解决上位机发送控制指令和下位机发送数据会在半双工RS485总线中产生冲突引起乱码而引入的(v0.010版本引入). 解决冲突的原理主 ...
- ios 你必须了解的系统定义宏使用
1. UNAVAILABLE_ATTRIBUTE __attribute__((unavailable)) - (instancetype)init UNAVAILABLE_ATTRIBUTE; 告诉 ...
- vue 修饰符 整理
事件修饰符 .stop <!-- 阻止单击事件继续传播 --> <a v-on:click.stop="doThis"></a> .preven ...