Ticket #510 (closed Defect: fixed)

Opened 17 months ago

Last modified 17 months ago

Tools that depend on MATLAB fail with python.exe: Cannot find the directory containing the 'FunctionsMatlab' component

Reported by: jjr8 Owned by: jjr8
Priority: Medium Milestone: 0.8
Component: Core - MATLAB Interop Version:
Keywords: Cc:

Description

The complete message looks like this:

python.exe: Cannot find the directory containing the 'FunctionsMatlab' component, 
python.exe:  which is required by this application. Make sure the directory containing 
python.exe:  'FunctionsMatlab.ctf' is on your dynamic load library path 
python.exe:  (PATH on Windows, or LD_LIBRARY_PATH on Linux, for example), or your 
python.exe:  application search path (PATH on both Windows and Linux). 
python.exe: Unable to obtain exclusive lock on CTF directory. If you are running multiple simutaneous instances of this application, initialization errors may occur. 
python.exe: Extracting CTF archive. This may take a few seconds, depending on the 
python.exe:  size of your application. Please wait... 
python.exe: Error initializing CTF Archive 
python.exe: RuntimeError: failed to initialize the Matlab extension module 
RuntimeError: python.exe returned exit code 1, indicating failure. 

 Here is a MATLAB bug report describing a similar problem. But, as I understand it, MGET uses a version of MATLAB (2007b) that contains the fix.

This problem seems to have popped up very recently, even though none of the relevant code has changed. My guess is that a recent Windows update broke Windows 7 compatibility with the version of MATLAB that MGET uses. In any case, the solution is to add the path to the .CTF file to the system PATH environment variable before calling the functions in it. Someone tested that for me on a broken system and it appeared to fix the problem.

Change History

Changed 17 months ago by jjr8

  • status changed from new to closed
  • resolution changed from null to fixed

Fixed in r873, released in MGET 0.8a31.

Note: See TracTickets for help on using tickets.