Я пытаюсь сгенерировать C-код для функции Matlab. Он использует веб-сервер Мангуста для общения. Если я поместу файлы .h/.c
в ту же папку, что и файл .m
, я смогу скомпилировать все нормально, используя:
coder.cinclude('mongoose.h');
coder.updateBuildInfo('addSourceFiles','mongoose.c');
coder.cinclude('rest.h');
coder.updateBuildInfo('addSourceFiles','rest.c');
Я бы хотел сохранить мои файлы .c
и .m
отдельнымипоэтому перемещение файлов C в папку с именем native/
приводит к сбою компиляции, как и ожидалось. Таким образом, я говорю Matlab, где их найти, используя:
customDir = '/full/path/to/native';
coder.updateBuildInfo('addIncludePaths', customDir);
coder.updateBuildInfo('addSourcePaths', customDir);
Что работает. Однако он работает только с абсолютными путями, а не с относительными путями. Это проблема, поскольку каждый участник этих проектов хранит исходную папку в другом месте. Как правильно определить месторасположение файлов Matlab, используя относительные пути к рабочему каталогу Matlab?