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

Reply via email to