Shared library initialization error with Matlab2015b and VS2015

3 次查看(过去 30 天)
I created a shared library using the following command mex -setup mcc -vg -W -win32 lib:libTest -T link:lib NumberToAlphabet
Program to initialize the shared library below.
if true
% code
end
class MatLabInit
{
public:
MatLabInit()
{
const char *args[] = { "-nojvm" };
const int count = sizeof(args) / sizeof(args[0]);
if (mclInitializeApplication(0, NULL) == false) {
MessageBox(NULL,_T("Could not initialize the application properly."),_T("Error"), MB_OK);
return;
}
if (libTestInitialize() == false) {
MessageBox(NULL, _T("Could not initialize libtest."),_T("Error"), MB_OK);
return;
}
}
~MatLabInit()
{
libTestTerminate();
mclTerminateApplication();
}
};
It could not initialize the shared library.
Could you please help me solve this.

回答(1 个)

Vineet Ahirkar
Vineet Ahirkar 2018-10-15
The error "Could not initialize shared library" commonly occurs when the "MCR_CACHE_ROOT" environment variable is not set.
To set this environment variable from MATLAB use the "setenv" function as follows -
% sample - setenv('VARIABLE_NAME','VALUE');
>> setenv('MCR_CACHE_ROOT','C:\TEMP');
For more information related to setting "MCR_CACHE_ROOT" please refer to the link below - 

类别

Help CenterFile Exchange 中查找有关 C Shared Library Integration 的更多信息

标签

产品


版本

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by