Search code examples
c++linuxmatlablocalematlab-engine

What does it mean when matlab can't find the locale database?


I have a C++ program that uses the matlab interface on linux. When I run the C++ program, I get an error relating to the locale database:

MATLAB:I18n:LocaleDatabaseNotFound - Cannot find the MATLAB locale database. 
The MATLAB process default locale is set to "en_US.US-ASCII".

What does this mean? Will this error result in serious numerical problems, or is it just a minor warning?


Solution

  • In plain English, this error message means that Matlab usually tries to speak the language of the user, so the user interface is in English for English users, in French for French users and so on.

    This is done by assigning a number to each text string that needs translation and pulling the translated stings out of a database (the 'locale database'). In your case, Matlab cannot find the translations for your language settings and falls back to English messages.

    This has no impact on your numerical calculations and is only cosmetic in nature.

    Maybe there could be problems with import/export formatting of ASCII data (decimal point vs decimal comma, thousand separator as ', comma or space, date as y/m/d or d/m/y or d.m.y is another aspect of the locale information).