|
|
Problem beim Compilieren von C-Files mit mex |
|
paillette |
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 12.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 6.5 , R2008a
|
|
|
|
|
|
Verfasst am: 27.07.2009, 11:07
Titel: Problem beim Compilieren von C-Files mit mex
|
|
Hallo,
ich habe C-Files, die ich nun compilieren möchte, um sie mit Matlab nutzen zu können. Es gibt bereits übersetzte Dateien (jedoch nicht von mir übersetzt), die aber nur mit der Matlab Version 6.5 funktionieren. Deswegen möchte ich die C-Programme mit einer neueren Version übersetzen, um das Ergebnis hoffentlich in neueren Versionen nutzen zu können.
Jedoch erhalte ich immer eine Fehlermeldung:
DATEINAME.obj .text: undefined reference to '_STRING'
Es gibt neben einem Ordner, der die C-Files enthält noch einen Ordner "include", den ich bereits mit -I eingebunden habe und somit eine Fehler-Kategorie behoben habe. Einen weiteren Ordner "lib" wollte ich über -L bzw. -l einbinden, was jedoch immer zu einem Fehler führt:
C:\MATLAB6P5\BIN\WIN32\MEX.PL: Error: Unrecognized switch: -L\PFAD\lib.
Kann mir jemand helfen, wie ich die Datei übersetzen kann?
Danke!
|
|
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 27.07.2009, 11:22
Titel:
|
|
Handelt es sich hier um MEX Files, also C Code der mit dem MEX Befehl in DLLS (heute MEXW32) Dateien umgewandelt wird oder um MATLAB Code der in C Code übersetzt wird. Die Technologie hat sich startek gewandelt, seit MATLAB 6.5 sind 13 neuer Versionen erschienen. In jedem Fall rate ich dazu den Code neu zu "mexen".
Andreas
|
|
|
paillette |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 12.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 6.5 , R2008a
|
|
|
|
|
|
Verfasst am: 27.07.2009, 11:25
Titel:
|
|
Es sind C-Files, die eine Funktion
void mexFunction
enthalten. Die übersetzten Files (*.dll) werden dann in einer Matlab-Funktion mittles feval aufgerufen.
|
|
|
paillette |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 12.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 6.5 , R2008a
|
|
|
|
|
|
Verfasst am: 27.07.2009, 14:02
Titel:
|
|
Ich habe das Problem nun gelöst, leider ist es keine allgemeine Lösung, da in meinem Fall noch ein M-File vorhanden war, mit dem man die C-Files kompilieren konnte, und das auch automatisch die Libraries und andere Files eingebunden, sowie die Optionen richtig gesetzt hat.
Danke trotzdem!
|
|
|
|
|
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.
|
|