我正在尝试在Ubuntu 14.04中安装Vlfeat支持octave。我按照以下链接的说明操作: http://www.vlfeat.org/install-octave.html。但是,当我运行命令
MKOCTFILE=mkoctfile make时,我收到以下错误:
Detected compiler: gcc 40800 MATLAB 2014a or greater detected MKOCTFILE toolbox/mex/octave/mexa64/vl_sift.d mv: cannot stat ‘./toolbox/sift/vl_sift.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_covdet.d mv: cannot stat ‘./toolbox/sift/vl_covdet.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_liop.d mv: cannot stat ‘./toolbox/sift/vl_liop.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_siftdescriptor.d mv: cannot stat ‘./toolbox/sift/vl_siftdescriptor.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_ubcmatch.d mv: cannot stat ‘./toolbox/sift/vl_ubcmatch.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_dsift.d mv: cannot stat ‘./toolbox/sift/vl_dsift.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_fisher.d mv: cannot stat ‘./toolbox/fisher/vl_fisher.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_vlad.d mv: cannot stat ‘./toolbox/vlad/vl_vlad.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_hikmeanspush.d mv: cannot stat ‘./toolbox/kmeans/vl_hikmeanspush.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_ikmeanspush.d mv: cannot stat ‘./toolbox/kmeans/vl_ikmeanspush.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_hikmeans.d mv: cannot stat ‘./toolbox/kmeans/vl_hikmeans.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_kmeans.d mv: cannot stat ‘./toolbox/kmeans/vl_kmeans.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_ikmeans.d mv: cannot stat ‘./toolbox/kmeans/vl_ikmeans.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_mser.d mv: cannot stat ‘./toolbox/mser/vl_mser.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_erfill.d mv: cannot stat ‘./toolbox/mser/vl_erfill.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_slic.d mv: cannot stat ‘./toolbox/slic/vl_slic.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_aibhist.d mv: cannot stat ‘./toolbox/aib/vl_aibhist.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_aib.d mv: cannot stat ‘./toolbox/aib/vl_aib.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_threads.d mv: cannot stat ‘./toolbox/misc/vl_threads.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_localmax.d mv: cannot stat ‘./toolbox/misc/vl_localmax.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_sampleinthist.d mv: cannot stat ‘./toolbox/misc/vl_sampleinthist.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_getpid.d mv: cannot stat ‘./toolbox/misc/vl_getpid.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_binsearch.d mv: cannot stat ‘./toolbox/misc/vl_binsearch.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_ihashfind.d mv: cannot stat ‘./toolbox/misc/vl_ihashfind.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_simdctrl.d mv: cannot stat ‘./toolbox/misc/vl_simdctrl.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_cummax.d mv: cannot stat ‘./toolbox/misc/vl_cummax.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_ihashsum.d mv: cannot stat ‘./toolbox/misc/vl_ihashsum.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_twister.d mv: cannot stat ‘./toolbox/misc/vl_twister.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_alldist2.d mv: cannot stat ‘./toolbox/misc/vl_alldist2.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_alldist.d mv: cannot stat ‘./toolbox/misc/vl_alldist.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_kdtreebuild.d mv: cannot stat ‘./toolbox/misc/vl_kdtreebuild.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_inthist.d mv: cannot stat ‘./toolbox/misc/vl_inthist.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_version.d mv: cannot stat ‘./toolbox/misc/vl_version.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_lbp.d mv: cannot stat ‘./toolbox/misc/vl_lbp.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_svmtrain.d mv: cannot stat ‘./toolbox/misc/vl_svmtrain.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_kdtreequery.d mv: cannot stat ‘./toolbox/misc/vl_kdtreequery.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_binsum.d mv: cannot stat ‘./toolbox/misc/vl_binsum.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_hog.d mv: cannot stat ‘./toolbox/misc/vl_hog.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_homkermap.d mv: cannot stat ‘./toolbox/misc/vl_homkermap.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_imsmooth.d mv: cannot stat ‘./toolbox/imop/vl_imsmooth.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_imwbackwardmx.d mv: cannot stat ‘./toolbox/imop/vl_imwbackwardmx.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_imintegral.d mv: cannot stat ‘./toolbox/imop/vl_imintegral.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_tpsumx.d mv: cannot stat ‘./toolbox/imop/vl_tpsumx.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_imdisttf.d mv: cannot stat ‘./toolbox/imop/vl_imdisttf.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_irodr.d mv: cannot stat ‘./toolbox/geometry/vl_irodr.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_rodr.d mv: cannot stat ‘./toolbox/geometry/vl_rodr.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_quickshift.d mv: cannot stat ‘./toolbox/quickshift/vl_quickshift.d’: No such file or directory MKOCTFILE toolbox/mex/octave/mexa64/vl_gmm.d mv: cannot stat ‘./toolbox/gmm/vl_gmm.d’: No such file or directory CC toolbox/mex/mexa64/vl_sift.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_covdet.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_liop.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_siftdescriptor.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_ubcmatch.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_dsift.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_fisher.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_vlad.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_hikmeanspush.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_ikmeanspush.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_hikmeans.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_kmeans.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_ikmeans.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_mser.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_erfill.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_slic.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_aibhist.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_aib.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_threads.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_localmax.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_sampleinthist.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_getpid.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_binsearch.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_ihashfind.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_simdctrl.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_cummax.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_ihashsum.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_twister.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_alldist2.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_alldist.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_kdtreebuild.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_inthist.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_version.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_lbp.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_svmtrain.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_kdtreequery.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_binsum.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_hog.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_homkermap.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_imsmooth.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_imwbackwardmx.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_imintegral.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_tpsumx.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_imdisttf.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_irodr.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_rodr.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_quickshift.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/vl_gmm.d cc1: error: /usr/bin/pdftex/extern/include: Not a directory CC toolbox/mex/mexa64/libvl.so /usr/bin/ld: cannot find -liomp5 collect2: error: ld returned 1 exit status make: *** [toolbox/mex/mexa64/libvl.so] Error 1
答案 0 :(得分:1)
我碰巧设法克服了这一点。但我不知道哪些步骤真的有用。以下是我的经历。
" mkoctfile"在octave-pkg-dev或liboctave-dev中。我不知道它在哪一个。我可以安装它们。
然后我评论了include make/doc.mak
(关于Makefile中的第324行)。它避免了一些pdftex错误。 (但后来vl_help赢了工作。)
然后我使用make MEX=YOUR/PATH/TO/MATLAB/bin/mex MKOCTFILE=mkoctfile
来制作。因为make / octave.mak依赖于某些matlab makefile(特定于matlab-noprefix),我猜matlab mex是以某种方式需要的。
现在似乎没问题,除了libvl.so
可能无法加载。 export LD_LIBRARY_PATH = / YOUR / PATH / vlfeat / toolbox / mex / octave / mexa64 /然后运行octave暂时解决这个问题。
答案 1 :(得分:1)
注意:如果在以下路径中没有名为“ octave”的文件夹,则从早期文件夹添加并包括所需的mex文件:
如果-> / home / your_path / vlfeat / toolbox / mex /
,则为原始更改为-> / home / your_path / vlfeat / toolbox / mex / octave / mexa64 /
打开vlfeat / make文件夹下的octave.mak并进行编辑 第39行:
已修改-> OCTAVE_MEX_BINDIR:= toolbox / mex / octave / $(MEX_SUFFIX)
原始-> OCTAVE_MEX_BINDIR:=工具箱/ mex / $(MEX_SUFFIX)
第130行: 原始文件-> rm -rf工具箱/ mex
修改-> rm -rf工具箱/ mex /八度
打开工具箱/mexutils.h
注释行33和34:
typedef int unsigned mwSize;
typedef int mwIndex;
在.bashrc文件中添加路径
修改==>导出LD_LIBRARY_PATH =“ / home / your_path / vlfeat / toolbox / mex / octave / mexa64 /”
export LD_LIBRARY_PATH =“ / home / your_path / vlfeat / toolbox / mex / mexa64 /”
现在从vlfeat导演使用编译八度音阶
MKOCTFILE = mkoctfile make
重新启动系统
打开vlfeat / toolbox / mex / octave / mexa64
然后从该位置打开八度音
答案 2 :(得分:0)
我在Ubuntu上没有MATLAB。
我使用了make MEX=/usr/local/bin/ MKOCTFILE=mkoctfile
,其中/usr/local/bin
有mkoctfile
程序和Octave程序。
对于/usr/bin/ld: cannot find -liomp5
,我使用了sudo apt install libomp-dev