【问题标题】:IPP linker errors on cygwincygwin 上的 IPP 链接器错误
【发布时间】:2010-01-21 18:24:35
【问题描述】:

我已经构建了一个使用 mkl 和 ipp 在 mac 和 linux 上运行的程序。我现在正在使用 cygwin 和 gcc 为 Windows 构建该程序,但无法链接。

我得到的错误是:

警告:.drectve -defaultlib:"uuid.lib" ' unrecognized ../../../bin/libMath.a(VectorUtility.cxx.o):VectorUtility.cxx:(.text+0x95): undefined reference to _ippGetLibVersion' ../../../bin/libMath.a(VectorUtility.cxx.o):VectorUtility.cxx:(.text+0x157): 未定义的引用 `_ippsWinHann_32f_I'

(还有更多类似的)。

我正在使用链接路径:

/opt/intel/IPP/6.1.2.041/ia32/lib

并链接到以下内容:

ippiemerged、ippimerged、ippmemerged、ippmmerged、ippsemerged、ippsmerged 和 ippcorel。

谁能指出我做错了什么?

【问题讨论】:

    标签: c++ linker cygwin intel-ipp


    【解决方案1】:

    上帝 IPP 必须是最烦人的事情,才能弄清楚你需要什么库。英特尔只是不提供任何信息。

    我使用以下库:

    "ippsmerged.lib"
    "ippsemerged.lib"
    "ippscemerged.lib"
    "ippsrmerged.lib"
    "ippsremerged.lib"
    "ippcorel.lib"
    

    【讨论】:

    • @Goz -- 是的,完全没有 IPP 文档。我试过你的清单,但仍然没有爱。
    • 它仍然给出相同的链接错误吗?因为我绝对可以用 ippsWinHann_32f_I 和那些...
    • @Goz -- 你使用的是 Visual Studio 还是 cygwin?如果是cygwin,我可以看看你的makefile吗?
    【解决方案2】:

    我曾经在静态链接时对评估版本有同样的问题。解决方案是动态链接:没有商业许可不支持静态链接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-17
      • 1970-01-01
      • 2013-09-08
      • 1970-01-01
      • 2012-04-11
      • 1970-01-01
      • 1970-01-01
      • 2018-07-26
      相关资源
      最近更新 更多