使用 MingW 构建英特尔 IPP

时间:2021-07-15 13:00:36

标签: c++ image-processing mingw intel-ipp

我正在尝试使用 NetBeans 12.2 将 Intel IPP 与 MingW(mingw-w64\x86_64-8.1.0) 一起使用,并尝试在 Win10 中使用 Eclipse 2021-06 (4.20.0)。指定了 include("C:/Program Files (x86)/Intel/oneAPI/ipp/2021.3.0/include") 和 dll's("C:/Program Files (x86)/Intel/oneAPI/ipp/2021.3.0/ redist/ia32") 项目设置中的路径。

对于下面的示例代码,

#include <iostream>
#include <ipp.h>
using namespace std;

int main(int argc, char** argv) 
{
    const       IppLibraryVersion *lib;
    IppStatus   status;
    Ipp64u      cpuFeatures, enabledFeatures;
    
    Ipp8u *gray= NULL; 
    IppiSize size;
    IplImage* img = NULL; // new IplImage structure img
    
    /* Init IPP library */
    ippInit();                      /* Initialize Intel(R) IPP library */
    lib = ippGetLibVersion();/* Get Intel(R) IPP library version info */
    printf("%s %s\n", lib->Name, lib->Version);

    return 0;
}

我遇到了错误, 错误:“IplImage”未在此范围内声明;

另外,在评论这一行时:IplImage* img = NULL;我收到以下错误,

<块引用>

g++ -o dist/Debug/MinGW-Windows/samplecppapplication build/Debug/MinGW-Windows/main.o -L"C:/Program\ Files
(x86)/Intel/oneAPI/ipp/2021.3.0/redist/ia32" -lippcc -lippccg9 -lippcch9 -lippccp8 -lippccs8 -lippccw7 -lippch -lippchg9 -lippchh9 -lippchp8 -lippchs8 -lippchw7 -lippcore -lippcv -lippcvg9 -lippcvh9 -lippcvp8 -lippcvs8 -lippcvw7 -lipcppdlippdplippdlippdclippdclippdclippdclippd -lippeh9 -lippep8 -lippes8 -lippew7 -lippi -lippig9 -lippih9 -lippip8 -lippis8 -lippiw7 -lipps -lippsg9 -lippsh9 -lippsp8 -lippss8 -lippsw7 -lippvm -lippvmg9 -lippvmh9 -lippvmpwmlippGW/cppvmp8-lippm /bin/../lib/gcc/i686-w64-mingw32/10.2.0/../../../../i686-w64-mingw32/bin/ld.exe: 找不到 -lippcc c:/MuTest/MinGW/bin/../lib/gcc/i686-w64-mingw32/10.2.0/../../../../i686-w64-mingw32/bin/ld.exe: 找不到 -lippccg9 c:/MuTest/MinGW/bin/../lib/gcc/i686-w64-mingw32/10.2.0/../../../../i686-w64-mingw32/bin/ld.exe: 找不到 -lippcch9 .... ...

你能帮忙解决这个问题并使用 IPP 开始工作吗?

1 个答案:

答案 0 :(得分:0)

我在windows10命令提示符下使用mingw-w64\x86_64-8.1.0附带的g++编译器尝试了ipp示例(在编译代码之前初始化oneapi环境)并且它工作正常(在注释行后:IplImage* img =无效的)。我已经将 intel64 文件夹中的库包含在 oneapi 附带的 ipp 目录中,因为我使用的是 64 位 Windows 机器。

g++ test.cpp -o ipptest -I "C:\Program Files (x86)\Intel\oneAPI\ipp\2021.3.0/include" -L "C:\Program Files (x86)\Intel\oneAPI\ipp\2021.3.0\redist\intel64" -lippcore
相关问题