Shared library initialization error with Matlab2015b and VS2015

3 views (last 30 days)
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.

Answers (1)

Vineet Ahirkar
Vineet Ahirkar on 15 Oct 2018
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 - 

Categories

Find more on C Shared Library Integration in Help Center and File Exchange

Tags

Products


Release

R2015b

Community Treasure Hunt

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

Start Hunting!