Matlab возвращает ошибку проверки лицензии при запуске с сервера Wamp, но не из командной строки

Я использую WAMP Server 2.5 (32-разрядный) с PHP 5.5.12 на 64-разрядном компьютере с Windows 7 с пакетом обновления 1 (SP1). Я бегу Matlab R2014b.

Я пытаюсь выполнить Matlab через PHP.

Функция Matlab phptest.m выглядит следующим образом:

function phptest
% Open file
fid = fopen('success.txt', 'wt');
%Print a test string
fprintf(fid, 'Test matlab function');
% Close file
fclose(fid);
% Quit MATLAB
quit force

Когда я выполняю из командной строки:

matlab -wait -nosplash -sd "C:\wamp\www\testMatlab" -logfile logfile.txt -r "phptest;"

код выполняется без проблем, и создается файл «sucess.txt».

Тем не менее, если я пытаюсь выполнить через php-файл:

<?php
$testStr = 'matlab -wait -nosplash -sd "C:\wamp\www\testMatlab" -logfile logfile.txt -r "phptest;"';
exec($testStr);
echo("Done!");
?>

Файл журнала показывает следующую ошибку:

Серьезный:
Ошибка проверки лицензии

Любая помощь будет оценена.

0

Решение

Вы можете заставить MATLAB использовать определенный файл лицензии, запустив его с -c флаг:

'matlab -c "path/to/license" -wait -nosplash -sd "C:\wamp\www\testMatlab" -logfile logfile.txt -r "phptest;"';

matlab -c файл лицензии запускает MATLAB, используя указанный файл лицензии.
Аргумент licensefile может иметь форму port @ host или может быть
Разделенный двоеточиями список имен файлов лицензий. Эта опция вызывает
Переменные среды LM_LICENSE_FILE и MLM_LICENSE_FILE должны быть
игнорируются.

Увидеть: http://www.mathworks.nl/help/matlab/ref/matlabwindows.html

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]