I saw that error message on my Windows Server 2008 R2 64-bit machine:
C:\Program Files
(x86)\Kepler-2.3\common-2.3.0\lib\ptolemy\matlab\ptmatlab.dll: Can't
load IA 32-bit .dll on a AMD 64-bit platform
However, the machine does not have Matlab installed, so I thought I
would focus on that problem first.
One workaround would be to build Ptolemy II from source and generate a
ptmatlab.dll file for the different platforms.
See http://chess.eecs.berkeley.edu/ptexternal for details.
_Christopher
On 4/20/12 8:14 PM, Wade Sheldon wrote:
No joy under Win7/64 either with a clean install of Kepler 2.3 and the
proper Matlab paths (albeit R2010a 64bit). However this time I get an
error related to running 32bit libraries on the system:
C:\Program Files
(x86)\Kepler-2.3\common-2.3.0\lib\ptolemy\matlab\ptmatlab.dll: Can't
load IA 32-bit .dll on a AMD 64-bit platform
(This is an Intel Core i7, not AMD cpu, BTW).
Sigh. Harder than I'd hoped. Python and R work fine as on WinXP/32 -
the problem is just related to the MatlabExpression actor, which is
what I'm particularly interested in using.
-Wade
On 4/20/2012 10:41 PM, Wade Sheldon wrote:
Also, I updated Java to the latest version (1.6.0_31-b05),
uninstalled Kepler, and reinstalled from a full admin account. Same
results. From what I can find on the web, that "The operating system
cannot run %1" is a generic error that implies a path issue. Anything
I can check regarding the Kepler classpath or libraries come to mind?
Thanks again for your help.
-Wade
On 4/20/2012 10:02 PM, Wade Sheldon wrote:
Thanks, Christopher. I had already perused the mailing list archives
via Google and just saw references to the same issue without
solutions. I confirmed that the JVM bit width is 32 (Java version
1.6.0_20).
I set up a simpler workflow with just a SDF director,
MatalbExpression actor and text display actor, and configured the
expression: "rand(100,1);", but I got the same error. Here's the
trace from the first time it was invoked, which yielded a little
more info as you indicated, specifically "C:\Program
Files\Kepler-2.3\common-2.3.0\lib\ptolemy\matlab\ptmatlab.dll: The
operating system cannot run %1". Hope that points to a specific issue.
Thanks.
-Wade
complete stack dump:
ptolemy.kernel.util.IllegalActionException: There was a problem
invoking the Ptolemy II Matlab interface.
The interface has been tested under Linux, Mac OS X, and Windows.
The interface requires that Matlab be installed on the local machine
and that the ptmatlab shared library available.
* Under Linux, you must have the LD_LIBRARY_PATH environment
variable set to include the directories that contain libmx.so and
libptmatlab.so.
* Under Mac OS X, you must have the DYLD_LIBRARY_PATH environment
variable set to include the directories that contain libmx.dylib and
libptmatlab.jnilib.
* Under Windows, you must have your PATH set to include the Matlab
bin/win32 or equivalent directory so that libmex.dll is found and
the directory that contains libptmatlab.dll. In addition, if you are
running under Windows from the Cygwin bash prompt, then you must
start Vergil with the -jni argument: $PTII/bin/vergil -jni. For
details, see $PTII/jni/package.html.
Refer to $PTII/ptolemy/matlab/makefile for more information.
in .Unnamed1.MatlabExpression
Because:
C:\Program
Files\Kepler-2.3\common-2.3.0\lib\ptolemy\matlab\ptmatlab.dll: The
operating system cannot run %1
at ptolemy.matlab.Expression.preinitialize(Expression.java:263)
at ptolemy.actor.Director.preinitialize(Director.java:1056)
at ptolemy.actor.Director.preinitialize(Director.java:1035)
at
ptolemy.domains.sdf.kernel.SDFDirector.preinitialize(SDFDirector.java:655)
at
ptolemy.actor.CompositeActor.preinitialize(CompositeActor.java:1735)
at
ptolemy.actor.Manager.preinitializeAndResolveTypes(Manager.java:930)
at ptolemy.actor.Manager.initialize(Manager.java:636)
at ptolemy.actor.Manager.execute(Manager.java:340)
at ptolemy.actor.Manager.run(Manager.java:1111)
at ptolemy.actor.Manager$PtolemyRunThread.run(Manager.java:1641)
Caused by: java.lang.UnsatisfiedLinkError: C:\Program
Files\Kepler-2.3\common-2.3.0\lib\ptolemy\matlab\ptmatlab.dll: The
operating system cannot run %1
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.load0(Unknown Source)
at java.lang.System.load(Unknown Source)
at
ptolemy.data.expr.UtilityFunctions._loadLibrary(UtilityFunctions.java:2068)
at
ptolemy.data.expr.UtilityFunctions.loadLibrary(UtilityFunctions.java:927)
at ptolemy.matlab.Engine.<clinit>(Engine.java:176)
at ptolemy.matlab.Expression.preinitialize(Expression.java:260)
... 9 more
Caused by: java.lang.UnsatisfiedLinkError: C:\Program
Files\Kepler-2.3\common-2.3.0\lib\ptolemy\matlab\ptmatlab.dll: The
operating system cannot run %1
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.load0(Unknown Source)
at java.lang.System.load(Unknown Source)
at
ptolemy.data.expr.UtilityFunctions._loadLibrary(UtilityFunctions.java:2068)
at
ptolemy.data.expr.UtilityFunctions.loadLibrary(UtilityFunctions.java:927)
at ptolemy.matlab.Engine.<clinit>(Engine.java:176)
at ptolemy.matlab.Expression.preinitialize(Expression.java:260)
at ptolemy.actor.Director.preinitialize(Director.java:1056)
at ptolemy.actor.Director.preinitialize(Director.java:1035)
at
ptolemy.domains.sdf.kernel.SDFDirector.preinitialize(SDFDirector.java:655)
at
ptolemy.actor.CompositeActor.preinitialize(CompositeActor.java:1735)
at
ptolemy.actor.Manager.preinitializeAndResolveTypes(Manager.java:930)
at ptolemy.actor.Manager.initialize(Manager.java:636)
at ptolemy.actor.Manager.execute(Manager.java:340)
at ptolemy.actor.Manager.run(Manager.java:1111)
at ptolemy.actor.Manager$PtolemyRunThread.run(Manager.java:1641)
On 4/20/2012 6:38 PM, Christopher Brooks wrote:
Hi Wade,
I don't think I have a WinXP installation at hand, but I was able
to run the MatlabExpression demo under Windows Server 2003 with a
32-bit JVM from a clean install of Kepler-2.3. Windows Server 2003
is fairly similar to XP.
To determine the bit width of your JVM, start up Kepler, go to
Tools -> check settings and look at the value of
sun.arch.data.model = 32
When I start a dos shell (Start->Run->cmd), I can start matlab from
the command line, which works for you.
--
Christopher Brooks, PMP University of California
CHESS Executive Director US Mail: 337 Cory Hall
Programmer/Analyst CHESS/Ptolemy/Trust Berkeley, CA 94720-1774
ph: 510.643.9841 (Office: 545Q Cory)
home: (F-Tu) 707.665.0131 cell: 707.332.0670
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users