Using mex - get error "Unknown encoding 'cp1252"

10 views (last 30 days)
Hi, i want to use the mex-functions. By calling "mex -setup" or other mex-functions i get the error Unknown encoding 'cp1252. Debugging and tracing the mex-files shows an error code 255 of DOS. The error occurs in line 176 (DOS-Output in file: mexutils.pm). I'm using WinXPx86 SP3 with MSVS 2010.
Is there any solution for this error?
Thanks!
  2 Comments
Martin B
Martin B on 31 Jul 2012
I got the exact same error message today. Hope somebody is able to help here.
Thanks a lot.
Christoph
Christoph on 3 Aug 2012
this is quite wired and frustrating...got this error today, too. I don't have any clue how to elimanate this error or how to work around. Did anyone solved this error?
Kind regards, CN

Sign in to comment.

Accepted Answer

Martin B
Martin B on 3 Aug 2012
Hi there,
my colleague and me just figured out how to "hard code" a workaround for this. As Martin already mentioned, the error occurs in the perl script "mexutilx.pm". It tries to use the perl function "decode" to decode with the "cp1252" codepage. Unfortunately this fails. Aftwerwards we thought: "Who needs decoding?", and disabled it. And it acutally works in my case.
So without any warranty:
Just place
$encoding = 0;
at line 148 in the mexutilx.pm file to make sure that the following
if ($encoding)
{
...
} else {
...
}
is not "true"! It worked in my case, although it might break if some c/c++ functions use things like ä,ö,ü....
And make sure that you copy the "mexutilx.pm" just to be able to restore to the old state.
Just one question: Can it be that both of use mex at work and is this workplace by any chance at a big german company?
Best regards, Martin
  2 Comments
Martin
Martin on 3 Aug 2012
Hi,
thanks a lot. Works fine!
Maybe ;-)
Best regards, Martin
Christoph
Christoph on 6 Aug 2012
Hi Martin B.,
thanks for your great work. I tried your workaround a few minutes ago and until now it works pretty well. i recognized just one small differece: at my Matlab-Version (32bit, R2012b) the Perl Script is called mexutils.pm
Nevertheless great work,
kind reagrds, CN

Sign in to comment.

More Answers (1)

Tobias
Tobias on 4 Jun 2013
Hello, I have a similar problem. When calling "mex -setup", I get the same error message Unknown encoding 'cp1252 ' refering to mexutils.pm line 176. I'm also using WinXP 32Bit, SP3 and Matlab 2013b. Unfortunately Martins solution didn't work for me. I appreciate any help, advice etc.
Thanks in advance!
  1 Comment
Tobias
Tobias on 4 Jun 2013
*solved
It seems that Matlab2013a has not the exact same mexutils.pm file. obviously i had to put $encoding = 0; several lines below...

Sign in to comment.

Categories

Find more on Introduction to Installation and Licensing in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!