2016-02-23 2 views
0

Я попытался добавить следующие строки в моем Makefile, чтобы добавить некоторые участки MATLAB на мой C++ рутина, чтобы установить переменные среды:Ошибка 127 г ++: Команда не найдена

export PATH='/APP/MATLAB/R2013a/bin':$PATH 

export LD_LIBRARY_PATH='/APP/MATLAB/R2013a/bin/glnxa64:/APP/MATLAB/R2013a/sys/os/gnlxa64':$LD_LIBRARY_PATH 

и обеспечить код с правильным местом для включаемых файлов во время компиляции:

.cpp.o: 
    g++ -c -DUNIX $(DEBUG) -I $(NR_DIR):/APP/MATLAB/R2013a/extern/include/ $< 
$(CMD): $(OBJ) 
    g++ -o [email protected] $(OBJ) -L$(NR_DIR) -lnr -DUNIX -I $(NR_DIR):/APP/MATLAB/R2013a/extern/include/ 

Где я только добавил :/APP/MATLAB/R2013a/Экстерн/включить/ к включает.

Компиляция работает нормально, за исключением того, что файл один .cpp я внес изменения в (это тот, который требует нового включает в себя) посылает следующее сообщение об ошибке:

enter image description here

который звучит так, как будто я должен установить g ++, но как это могло быть, если g ++ запускается для всех других файлов должным образом, и он также отлично работает с компиляцией исходной программы?

Я хотел бы знать, допущу ли я ошибку в вызове компилятора, и если экспорт не совсем прав. Это нормально работает на моем ноутбуке, но теперь, когда я попытался перенести программу в кластер нашей школы, она стала грязной.

enter image description here

+0

Что произойдет, если вы выполните echo $ PATH до g ++, чтобы убедиться, что вы не взорвали путь к пыли? – user4581301

ответ

2

-I вариант g++ не предполагает точку с запятой разделенного списка каталогов. Это означает, что вы должны использовать опцию -I для каждого каталога. Пример:

-I $(NR_DIR) -I/APP/MATLAB/R2013a/extern/include 
+0

Я пробовал эту модификацию, но у меня все еще есть ошибка ... может быть что-то не так с $ <... Я не знаком с этим синтаксисом и просто пытаюсь обновить кого-то еще (я не знаю) Работа. –

+0

На самом деле я так не думаю. Попробуйте 'echo' переменную' PATH' одну строку выше, чем предыдущий запуск g ++ в Makefile, возможно, это неверно. Если еще нет - обновите описание с помощью последней версии Makefile и ошибки. – dmi

+0

Где бы я ни сказал «эхо», он говорит мне «отсутствующий разделитель», не могли бы вы сказать мне правильный способ сделать это? –

Смежные вопросы