2013-08-25 2 views
3

Я пытаюсь скомпилировать FLANN на удаленном компьютере, который я не являюсь пользователем root. Для этого я собрал cmake у себя дома и установил псевдоним для вызова. Я также загрузил FLANN из Интернета и обработал компиляцию, как это предлагается в руководстве.Как изменить путь MATLAB для компиляции mex-файлов FLANN с помощью команды cmake?

mkdir build 
cd build 
cmake .. 
make 

Он скомпилирован без ошибок, но модуль matlab и компиляция mex. Даже я добавляю бит matlab в $ PATH, он дает следующее предупреждение после cmake ...

... 
CMake Warning at src/matlab/CMakeLists.txt:57 (message): 
    The 'mex' and 'mexext' programs have been found in different locations. 
    It's likely that one of them is not part of the MATLAB instalation. Make 
    sure that the 'bin' directory from the MATLAB instalation is in PATH 
... 

Из-за этого вопроса, MATLAB MEX файлы не собираются, когда я исполняю make. Я никак не мог решить эту проблему, даже попытался установить некоторые конфигурации cmake. Есть ли какие-либо предложения по решению этой проблемы компиляции?

echo $PATH 
/home/y/bin:/usr/kerberos/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin:/usr/local/matlab/bin 

which mex 
/usr/local/bin/mex 

which mexext 
/usr/local/matlab/bin/mexext 
+0

Не могли бы вы добавить вывод этих трех команд: 'echo $ PATH',' which mex' и 'which mexext'? –

+0

сделали @MattB. – erogol

+1

Я решаю проблему, беря путь Matlab на первое место на $ PATH – erogol

ответ

3

Альтернативным решением (которое сработало для меня) является создание символической ссылки для mexext в /usr/local/bin что указывает на то, где mexext действительно найден.

sudo ln -s /usr/local/MATLAB/R2016a/bin/mexext /usr/local/bin/mexext 
Смежные вопросы