1

I am trying to install Vlfeat support for octave in Ubuntu 14.04. I am following the instructions at the following link: http://www.vlfeat.org/install-octave.html . However when I run the command

MKOCTFILE=mkoctfile make
I get the following error:

    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

Anurag Saran
  • 301
  • 2
  • 13

3 Answers3

1

I happen to manage to get over this. But I don't know which steps really contributes. Here are my experiences.

"mkoctfile" is in octave-pkg-dev or liboctave-dev. I don't know which one it is in. I apt-get installed them both.

Then I commented include make/doc.mak (about line 324 in Makefile). It avoids some pdftex errors. (but later on vl_help won't work.)

Then I use make MEX=YOUR/PATH/TO/MATLAB/bin/mex MKOCTFILE=mkoctfile to make. Because make/octave.mak depends on some matlab makefile (matlab-noprefix in specific), I guess matlab mex is required somehow.

Now it seems ok except libvl.so may failed to load. export LD_LIBRARY_PATH=/YOUR/PATH/vlfeat/toolbox/mex/octave/mexa64/ and then run octave solves this temporarily.

scinart
  • 457
  • 2
  • 9
1

Note: if there is no folder named 'octave' in the following path then add and include required mex files from earlier folder:

original if -->/home/your_path/vlfeat/toolbox/mex/

change to --> /home/your_path/vlfeat/toolbox/mex/octave/mexa64/

Open octave.mak under vlfeat/make folder and edit line 39:

modified --> OCTAVE_MEX_BINDIR := toolbox/mex/octave/$(MEX_SUFFIX)

original --> OCTAVE_MEX_BINDIR := toolbox/mex/$(MEX_SUFFIX)

line 130: original--> rm -rf toolbox/mex

modified--> rm -rf toolbox/mex/octave

Open toolbox/mexutils.h

Comment line 33 and 34:

typedef int unsigned mwSize ;

typedef int mwIndex ;

Add path in .bashrc file

modified ==> export LD_LIBRARY_PATH="/home/your_path/vlfeat/toolbox/mex/octave/mexa64/"

export LD_LIBRARY_PATH="/home/your_path/vlfeat/toolbox/mex/mexa64/"

now from the vlfeat director compile octave using

MKOCTFILE=mkoctfile make

RESTART THE SYSTEM

Open vlfeat/toolbox/mex/octave/mexa64

and open octave from that location

0

I do not have MATLAB on Ubuntu.

I used make MEX=/usr/local/bin/ MKOCTFILE=mkoctfile where /usr/local/bin has the mkoctfile program and Octave program.

For /usr/bin/ld: cannot find -liomp5 I used sudo apt install libomp-dev