2012-03-29 7 views
2

Ich habe ein Makefile, das ich beim Schreiben von Latex-Dokumenten verwenden, es macht automatisch meine .eps, .svg und .dia-Dateien in .pdf-Dateien. Aber ich möchte es automatisch ein Matlab-Skript ausführen lassen, das mehrere .eps-Dateien macht, die ich dann zu .pdf-Dateien machen kann. Es sollte jedoch nur das Matlab-Skript ausführen, wenn es seit der letzten Ausführung der .eps-Dateien geändert wurde, da das Makefile sehr langsam wird, wenn es jedes Mal, wenn es ausgeführt wird, Matlab öffnen und schließen muss. Gibt es eine Möglichkeit, dies zu tun?Wie bekomme ich mein Makefile Matlab-Skripte ausführen

+0

Mit welchem ​​Teil haben Sie Schwierigkeiten? Führt es Matlab aus dem Makefile aus? Oder formuliert es die Regeln so, dass die Skripte nur ausgeführt werden, wenn sich die Quelle geändert hat? Außerdem: Welchen Geschmack von Make verwendest du (und auf welchem ​​Betriebssystem)? –

Antwort

2

Sie in Ihrem Makefile ausführen können:

matlab -r "myfunction(myargs)" 
1

Um von @ Oli Vorschlag zu folgen, könnten Sie

MATLAB := /path/to/bin/matlab 

myFigure.eps : myPlot.m myData.mat 
    $(MATLAB) -r "try, myPlot('myData.mat', 'myFigure.eps'); catch, end, exit" 

oder ähnliches in Betracht ziehen.

+0

Thx Jungs ... Das hat viel geholfen – FusionFox

Verwandte Themen