在新的Matlab版本上运行旧的mex文件 [英] running old mex file on new matlab releases

查看:352
本文介绍了在新的Matlab版本上运行旧的mex文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在新版本(R2009a)上运行最初在Matlab 6.5上测试过的程序 该程序使用了一些mex文件,尝试运行它时出现以下错误:

I'm trying to run a program originally tested on Matlab 6.5 on a new release (R2009a) The program uses some mex files, and I get the following error when trying to run it:

???无效的MEX文件'/normalizedCut/common_files/sparsifyc.mexglx': normalizedCut/common_files/sparsifyc.mexglx:符号mxGetIr,版本 带有链接时间参考的libmx.so文件中未定义libmx.INTERNAL.

??? Invalid MEX-file '/normalizedCut/common_files/sparsifyc.mexglx': normalizedCut/common_files/sparsifyc.mexglx: symbol mxGetIr, version libmx.INTERNAL not defined in file libmx.so with link time reference.

(我尝试调整的代码是Shi& Malic的Normalized cut,可以在这里找到: http://www.cis.upenn.edu/~jshi/software /files/NcutClustering_7.zip )

(the code I'm trying to tun is Normalized cut by Shi & Malic, and can be found here: http://www.cis.upenn.edu/~jshi/software/files/NcutClustering_7.zip)

如果我尝试在同一系统上运行代码,但Matlab 2007a可以正常运行.

If I try to run the code on the same system but Matlab 2007a it runs ok.

2009a的向后兼容性是否存在问题? 我可以更改系统中某处的标志以帮助其工作吗?

Is there some problem with backwards compatibility for 2009a? Are there any flags somewhere in the system I can change to help it work?

当我用Google搜索它时,我看到了对LD_LIBRARY_PATH env变量的一些引用,但是我找不到确切应该添加的内容.

When I googled it I saw some references to the LD_LIBRARY_PATH env variable, but what exactly should be added to it I could not find out.

谢谢, Yair

推荐答案

这些mex函数的源代码似乎在此页面上的具有标准化切割的图像分割"源中可用:

The source code for those mex functions appears to be available in the "Image segmentation with normalized cuts" source on this page: http://www.cis.upenn.edu/~jshi/software/ (in the specific_NcutImage_files subdirectory in the unpacked .zip)

这篇关于在新的Matlab版本上运行旧的mex文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆