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 &lt;itpp/config.h&gt;
#else
#  include &lt;itpp/config_msvc.h&gt;
#endif

#if defined(HAVE_FFT_MKL)
namespace mkl
{
#  include &lt;mkl_dfti.h&gt;
&lt;--在这里添加:# undef DftiCreateDescriptor
}
#elif defined(HAVE_FFT_ACML)
namespace acml
{
#  include &lt;acml.h&gt;

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++的更多相关文章

  1. Windows下编译objective-C

    Windows下编译objective-C 2011-08-31 14:32 630人阅读 评论(0) 收藏 举报 windowscocoa工具objective clibraryxcode   目录 ...

  2. windows下编译和安装boost库

    boost是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库. 获取方式 boost提供源码形式的安装包,可以从boost官方网站下载,目前最新版本是1.59.0. 本机上正好有boos ...

  3. [分享]windows下编译squid的经验(转)

    squid是什么我这里就不说了,这不是本文的重点,总之它是一个集:代理.加速.缓存.负载均衡.防盗链.访问控制等多功能的一个超牛X开源软件,如今已经广泛应用于很多领域.对于缓存和加速这一领域,如今各大 ...

  4. Windows下编译最新版ChezScheme

    据说ChezScheme是最快的神级编译器,一秒钟几百万行,王垠说的2秒内编译自身绝不是夸张(看这里<揭秘Chez Scheme>,Scheme中文社区).ChezScheme由美国印第安 ...

  5. [转] Windows下编译OpenSSL

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  6. 在Windows下编译FFmpeg详细说明

    MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNC工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时 MinGW,即 Minimalist GNU F ...

  7. 如何在WINDOWS下编译BOOST C++库 .

    如何在WINDOWS下编译BOOST C++库 cheungmine 2008-6-25   写出来,怕自己以后忘记了,也为初学者参考.使用VC8.0和boost1.35.0.   1)下载boost ...

  8. 在Windows下编译OpenSSL(VS2005和VC6)

    需要说明的是请一定安装openssl-0.9.8a .  openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...

  9. windows下编译java源文件的编码错误

    import java.util.Arrays;public class ArrayAsAReference{ public static void main(String[] args) { int ...

随机推荐

  1. PlayMaker 对 PlayMakerFSM 里变量的操作

    HutongGames.PlayMaker; //需要引用这个命名空间 红色的字体是对变量的操作,其他的没啥关系. #region 判断为 PlayMakerFSM 组件时 if (behaviour ...

  2. [转]JavaScriptSerializer中日期序列化

    本文转自:http://www.cnblogs.com/songxingzhu/p/3816309.html 直接进入主题: class Student { public int age { get; ...

  3. pat1093. Count PAT's (25)

    1093. Count PAT's (25) 时间限制 120 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CAO, Peng The strin ...

  4. VUE中给template组件加背景

    <template> <div class="index_background" > </div> </template> < ...

  5. C#获取文件格式图标关联应用程序图标

    class SystemIcon { [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)] public struct SHFIL ...

  6. HttpFlexSession注册失败的怪问题

    web.xml中已经注册了HttpFlexSession <listener> <listener-class>flex.messaging.HttpFlexSession&l ...

  7. synchronized + volatile + ThreadLocal

    线程的共享 synchronized  +  volatile + ThreadLocal <1> synchronized 锁住的是对象,当用它来锁住一个类时,实际上也是锁的一个对象. ...

  8. CSS实现多重边框和内凹圆角

    CSS实现多重边框 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset=&q ...

  9. android libs库中的armeabi-v7a,armeabi和x86

    以下内容转载于:http://blog.csdn.net/liumou111/article/details/52949156 1.区别: 这三者都表示的是CPU类型,早期的Android系统几乎只支 ...

  10. NPOI Excel表格处理

    //创建一个Excel文件 HSSFWorkbook work = new HSSFWorkbook(); //新建一个工作表 ISheet sheet1 = work.CreateSheet(&qu ...