The matlab binary must be in your $PATH.
--dan
On 6/28/11 12:12 PM, Joe Futrelle wrote:
This works.
And it gets me past the stack trace I was getting before! :)
Here's the transcript. I combined advice from two posts upthread.
bash-3.2# DYLD_LIBRARY_PATH=/Applications/MATLAB_R2011a.app/bin/maci64/ env |
grep DYLD
DYLD_LIBRARY_PATH=/Applications/MATLAB_R2011a.app/bin/maci64/
bash-3.2# open /Applications/Kepler-2.2/Kepler.app
Now I'm getting a different stacktrace. I have a properly-licensed Matlab
instance running and csh is @ /bin/csh.
ptolemy.kernel.util.IllegalActionException: matlabEngine.open(null) : can't find Matlab
engine. Try starting Matlab by hand as an application to verify that Matlab is set up
properly and the license is correct. Under Windows, try running "matlab
/regserver", the Matlab C API communicates with Matlab via COM, and apparently the
COM interface is not automatically registered when Matlab is installed. Under Linux and
other types of UNIX, csh must be installed in /bin/csh.
at ptolemy.matlab.Engine.open(Engine.java:280)
at ptolemy.matlab.Engine.open(Engine.java:232)
at ptolemy.matlab.Expression.preinitialize(Expression.java:303)
at ptolemy.actor.Director.preinitialize(Director.java:1010)
at ptolemy.actor.Director.preinitialize(Director.java:991)
at
ptolemy.domains.ct.kernel.CTDirector.preinitialize(CTDirector.java:748)
at
ptolemy.domains.ct.kernel.CTMultiSolverDirector.preinitialize(CTMultiSolverDirector.java:637)
at ptolemy.actor.CompositeActor.preinitialize(CompositeActor.java:1735)
at ptolemy.actor.Manager.preinitializeAndResolveTypes(Manager.java:983)
at ptolemy.actor.Manager.initialize(Manager.java:643)
at ptolemy.actor.Manager.execute(Manager.java:340)
at ptolemy.actor.Manager.run(Manager.java:1164)
at ptolemy.actor.Manager$3.run(Manager.java:1217)
On Jun 28, 2011, at 3:02 PM, Sean Riddle wrote:
I can't get launchd.conf to set DYLD_LIBRARY_PATH, but for some reason
it doesn't set anything else either. But DYLD_LIBRARY_PATH is
settable, at least in some ways:
dhcp33-gc5:~ sean$ DYLD_LIBRARY_PATH=hello env | grep "DYLD_LIBRARY_PATH"
DYLD_LIBRARY_PATH=hello
I would recommend trying the support including in the build system for
setting environment variables. Create a file
kepler/module-info/environment.txt and specify the value there. You
can look at r/module-info/environment.txt for an example. Note that as
in the example, you can (and possible must, I'm not sure) specify
separate values for all three of the platforms that Kepler supports.
- Sean
On Tue, Jun 28, 2011 at 11:27 AM, Joe Futrelle<jfutre...@whoi.edu> wrote:
I tried that, didn't work.
Again, I have no problem setting system-wide environment variables in launchd.conf. If I set "foo" to
"bar" then "foo" is set to "bar" in my environment. But if I set DYLD_LIBRARY_PATH to
anything, it's like I didn't set it at all.
Exactly the same behavior with environment.plist. It seems to me like
DYLD_LIBRARY_PATH is on some kind of blacklist.
On Jun 28, 2011, at 2:15 PM, Sean Riddle wrote:
I always heard that if you wanted to set environment variables for GUI
applications in OS X, you needed to edit the environment.plist file. A
stackoverflow thread
(http://stackoverflow.com/questions/135688/setting-environment-variables-in-os-x)
says it can be set on a per-user basis at ~/.MacOSX/environment.plist.
However, that thread also says that launchd.conf also works for GUI
applications. Maybe try setting it in environment.plist to see if that
makes a difference.
- Sean
PS - Property List Editor in Utilities is what creates and edits .plist files.
On Tue, Jun 28, 2011 at 11:09 AM, Joe Futrelle<jfutre...@whoi.edu> wrote:
Hi, I'm trying to run Matlab codes from Kepler in Mac OS (Snow Leopard). As an
inexperienced user I'm simply firing up the prepackaged Mac OS distribution of
Kepler and double-clicking on the app icon.
It's no problem constructing a workflow with a "Matlab expression" in it, but
when I run I get a stacktrace about the Matlab libraries not being on the
DYLD_LIBRARY_PATH.
I'm having no trouble finding those libraries manually; they're right where
they should be in my Matlab install, and they're 64 bit, and everything seems
in order.
Setting DYLD_LIBRARY_PATH doesn't seem possible in Mac OS; I can set
environment variables in launchd.conf, but launchd appears to silently ignore
DYLD_LIBRARY_PATH; maybe it's special-casing it for some reason.
I'm having trouble finding a previous post on this list, or a bug in Kepler's
bugzilla database, or a documentation section or FAQ entry that explains how to
solve this. It's clear that some people have had problems with this in the
past, but I don't see a clear description of what I should be doing. Any and
all advice welcome.
Mac OS version: 10.6.7
Java version: 1.6.0_24 (Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02-334,
mixed mode))
Kepler version: 2.2
Matlab version: R2011a
--
Joe Futrelle
Woods Hole Oceanographic Institution
jfutre...@whoi.edu
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
--
Joe Futrelle
Woods Hole Oceanographic Institution
jfutre...@whoi.edu
--
Joe Futrelle
Woods Hole Oceanographic Institution
jfutre...@whoi.edu
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users