Calling programs (AMPL) from within Matlab on a Mac
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Greetings, I just switched to a Mac, and am trying to call another program from within Matlab (in this case AMPL). I think my problem is simple: I want to call AMPL from a Matlab script. On a Windows computer I used the command
strAmplSystemCall = sprintf('ampl AC.run'); system(strAmplSystemCall);
(ampl is in the Matlab path). On the mac, I'm now getting the error
/bin/bash: ampl: command not found
I've tried it with './ampl' instead of just 'ampl' as well, and received the same error (with ./ampl not found). Anyone know the right syntax for this?
Josh
0 commentaires
Réponses (1)
Chirag Gupta
le 11 Août 2011
I guess, when you run ampl, you would need certain directories to be on the PATH (environment variable) as well as some dynamic libraries (DYLD_LIBRARY_PATH another env).
Try setting the environment variables before calling the system command. You should be able to do so using export command in the bash or using setenv directly from MATLAB
3 commentaires
Walter Roberson
le 11 Août 2011
oldLP = getenv('DYLD_LIBRARY_PATH');
newLP = oldLP;
if ~isempty(newLP); newLP(end+1) = ':'; end
newLP = [newLP, 'TheAdditionalPath'];
setenv('DYLD_LIBRARY_PATH',newLP);
Voir également
Catégories
En savoir plus sur Startup and Shutdown dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!