|
|
G95 mexa64 files compilierung geht aber ausfuehrung? |
|
IchEinGast |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 05.08.2011, 08:42
Titel: G95 mexa64 files compilierung geht aber ausfuehrung?
|
|
|
|
|
Hallo,
nach ewigem suchen habe ich einen g95 compiler in 64 Bit als binary gefunden. Ich versuche die in fortran geschriebenen programme also über
g95 mit mex zu übersetzen. dazu habe ich meine mexopts.sh datei editiert und benutze folgende konfig:
die kompilierung läuft über mex -v -I<pfad zu includes> datei.f durch und ein datei.mexa64 file wird erstellt.
Wenn ich aber nun aber das korrespondierende Matlab file was den fortran code aufrufen soll starte ganz normal über den matlab befehl der funktion ( Z = foo(A,0) ) kommt eine fehlermeldung des fortran codes mit
obwohl ich ja 2 argumente benutze und die funktion mit 2 argumenten aufrufe. selbst der wert von nargin ist 2.
Versteht jemand was hier vor sich geht? Ich begreife absolut nicht wo mein Fehler liegt. Mache ich was in der Kompilierung falsch? Ich habe noch nie mex-files übersetzt und gestartet. Das Matlab-Beispiel mit yprime habe ich gemacht und das geht auch.
Danke euch.
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 05.08.2011, 19:11
Titel:
|
|
Hallo,
von Seiten von Mathworks werden nur bestimmte Compiler unterstützt. Schau doch mal, ob der von dir verwendete (bei deinem Release) in der Liste enthalten ist.
Falls nicht, wird das von Mathworks nicht offiziell unterstützt - was aber nicht heißen muss, dass es nicht funktioniert.
Vorschlag: wandle yprime mal in ein primitives Programm mit zwei Eingabeargumenten um. Wenn das klappt, versuche das in dein Programm zu übernehmen.
Grüße,
Harald
|
|
|
Titus |
Forum-Meister
|
|
Beiträge: 871
|
|
|
|
Anmeldedatum: 19.07.07
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 14.08.2011, 18:08
Titel:
|
|
Hallo,
die Fehlermeldung sieht merkwuerdig aus: die Fehlermeldung sieht aus, als ob er in foo.m in Zeile 52 die Funktion foo aufrufen moechte. Wenn er aber in foo.m ist, dann ist foo nicht die MEX Datei ...?? Ich wuerde vorschlagen, den Debugger zu verwenden, breakpoint setzen und mit "which foo" jeweils abfragen, was MATLAB gerade unter foo versteht ...
Titus
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|