C++ 英特尔性能原语(IPP)运行时错误

C++ 英特尔性能原语(IPP)运行时错误,c++,intel-ipp,C++,Intel Ipp,我有不是我写的源代码,我无法联系作者。它是用C++编写的,需要LIGBJPEG、Boost和英特尔性能基元。 编译是一件苦差事,但经过几天的问题解决,它可以编译。现在,我得到以下运行时错误:加载共享库时出错:libippi.so.5.1:无法打开共享对象文件:没有这样的文件或目录。无论命令行参数如何,错误都会立即发生 我下载了Ubuntu 9.04的IPP试用版。在/opt/intel/ipp/6.1.2.051/ia32/sharedlib/下,我看到一堆以lib*和libippi*开头的文件

我有不是我写的源代码,我无法联系作者。它是用C++编写的,需要LIGBJPEG、Boost和英特尔性能基元。 编译是一件苦差事,但经过几天的问题解决,它可以编译。现在,我得到以下运行时错误:
加载共享库时出错:libippi.so.5.1:无法打开共享对象文件:没有这样的文件或目录
。无论命令行参数如何,错误都会立即发生

我下载了Ubuntu 9.04的IPP试用版。在
/opt/intel/ipp/6.1.2.051/ia32/sharedlib/
下,我看到一堆以
lib*
libippi*
开头的文件,包括
libippi.so.6.1
。所以我想我会尝试创建一个链接
libippi.So.5.1
,指向
libippi.So.6.1
,但这不起作用。我尝试在本地目录中创建一个类似的链接,但这也不起作用


我对这些库中的任何一个都不熟悉,所以我不知道还能尝试什么。我在网上找不到任何解决办法。如果您能帮我纠正这个错误,我将不胜感激。谢谢。

看起来该应用程序是根据旧版IPP编译的。由于6.1.2被称为libippi.so.6.1,因此安装IPP5.1.x可能很简单(尽管linux库版本控制没有这么简单)

如果您为“英特尔非商业IPP下载区”创建登录名,您可以四处搜索,看看他们是否提供较旧的版本

或者,通过快速谷歌搜索,我找到了这个FTP站点,它似乎有,但请注意,我没有实际下载或尝试此代码,并且无法验证这是否是合法镜像,或者它是否是原始英特尔库,在使用此代码之前,您需要进行自己的尽职调查


请注意,要在现代Ubuntu中使用此旧版本的IPP,您可能需要获得它所依赖的其他库的旧版本(要求在发行说明中列出),或者甚至只需在受支持的Linux发行版的chroot下运行它,至少可以测试它是否修复了您的问题。

看起来该应用程序是根据旧版本的IPP编译的。由于6.1.2被称为libippi.so.6.1,因此安装IPP5.1.x可能很简单(尽管linux库版本控制没有这么简单)

如果您为“英特尔非商业IPP下载区”创建登录名,您可以四处搜索,看看他们是否提供较旧的版本

或者,通过快速谷歌搜索,我找到了这个FTP站点,它似乎有,但请注意,我没有实际下载或尝试此代码,并且无法验证这是否是合法镜像,或者它是否是原始英特尔库,在使用此代码之前,您需要进行自己的尽职调查


请注意,要在现代Ubuntu中使用此旧版本的IPP,您可能需要获得它所依赖的其他库的旧版本(要求在发行说明中列出),或者甚至只在受支持的Linux发行版的chroot下运行它,至少测试它是否修复了您的问题。

我知道这已经有一段时间了,但这里有一个解决方案可以帮助解决这个问题
:)

我知道已经有一段时间了,但这里有一个解决方案可以帮助解决这个问题
:)

谢谢您的快速回复。注意到免责声明。另一种解决方案可能是找到程序中引用IPP 5.1的部分,然后简单地将其“更改”为6.1,或者这些库是否有显著的不同?无论是在C++源代码、头文件还是MaMeCube中,这可能是可能的,恐怕我不知道如何对API更改的程度进行评论。但是,如果您根据6.1从源代码进行编译,并且仍然依赖于6.1中未包含的libppi,那么我相信树中的某些组件不是完全从源代码构建的,而是根据不同版本进行预编译的。您可能希望深入研究ldd,看看对libppi.so.5.1的依赖是否来自您的主应用程序或它链接的某个库。另外,还可以在make文件中查找libppi的引用,看看是否找到了引用谢谢您的快速响应。注意到免责声明。另一种解决方案可能是找到程序中引用IPP 5.1的部分,然后简单地将其“更改”为6.1,或者这些库是否有显著的不同?无论是在C++源代码、头文件还是MaMeCube中,这可能是可能的,恐怕我不知道如何对API更改的程度进行评论。但是,如果您根据6.1从源代码进行编译,并且仍然依赖于6.1中未包含的libppi,那么我相信树中的某些组件不是完全从源代码构建的,而是根据不同版本进行预编译的。您可能希望深入研究ldd,看看对libppi.so.5.1的依赖是否来自您的主应用程序或它链接的某个库。还要搜索make文件中对libppi的引用,看看是否找到了引用