2016-12-14 2 views
0

Прежде всего, спасибо за чтение этого сообщения и возможность помочь.Matlab S Function Builder как сменить компилятор на g ++

Я пытаюсь скомпилировать код C++ в S-Function Builder. Когда я нажимаю на «построить» MATLAB дает мне ошибку, которая:

error: expected identifier or ‘(’ before ‘/’ token

Я знаю, что может быть Matlab использует компилятор C, но не C++ компилятор.

Как я могу перейти на компилятор C++ в S-Function builder? Я пробовал с mex -setup C++, но он не работает. И с mbuild -setup C++ тоже.

Я работаю над Ubuntu.

Большое спасибо за помощь.

ответ

0

Чтобы скомпилировать s-функцию как C++, вы должны использовать команду в командном окне. Важно, чтобы расширение исходного файла было .cpp или оно не будет восприниматься как функция C++.

mex s_function.cpp 

Из-за ошибки, которую вы получаете, похоже, что у вас есть синтаксическая ошибка.

+0

Благодаря ответу. Я делаю «mex s_function.cpp», но он не может найти заголовки te (.h). Это происходит потому, что они не находятся в текущей папке, поэтому как указать путь к заголовкам? Большое спасибо –

+0

Вы должны иметь возможность использовать флаг -I, чтобы указать, где находятся файлы. См. Этот matlab [ответ] (https://www.mathworks.com/matlabcentral/answers/4590-include-files) – Rethipher

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