|
|
Error bei MEX File Erstellung |
|
AGE |

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 24.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.11.2012, 14:32
Titel: Error bei MEX File Erstellung
|
 |
|
 |
|
lcc preprocessor warning: .\datei1.h:30 .\OmsUmxMC.h:18 .\datei1.h:10 test1.c:8 No newline at end of file
Error test1.c: .\OmsUmxMC.h: 124 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 125 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 126 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 129 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 130 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 131 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 132 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 133 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 134 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 137 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 140 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 143 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 145 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 146 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 147 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 148 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 149 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 150 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 151 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 152 unrecognized declaration
Error test1.c: .\OmsUmxMC.h: 153 too many errors
C:\PROGRA~1\MATLAB\R2010A\BIN\MEX.PL: Error: Compile of 'test1.c' failed.
??? Error using ==> mex at 222
Unable to complete successfully.
so zu meinem Problem:
ich möchte in Matlab diese mexfile ausführen
im mex file selbst inst diese mex.h drinne und diese void mexFunction
in der void selbst wird nur auf eine andere Main zugegriffen und das programm wird durchlaufen.
In Visual Studio gibts keine probleme : keine fehler kein warning
In matlab kommt die oben gezeigte fehlermeldungnatürlich habe ich im mex setupo den compiler gewählt :
Lcc-win32 C 2.4.1 in C:\PROGRA~1\MATLAB\R2010a\sys\lcc
ich habe versucht die datei die angeblich fehlt über [/color]
zu laden funktioniert auch nicht
Fehlermeldung:
Warning: Message from C preprocessor:
lcc preprocessor warning: D:\...\datei1.h:30 D:\...\OmsUmxMC.h:18 No newline at end of file
> In loadlibrary at 374
Warning: Warnings messages were produced while parsing. Check the functions you
intend to use for correctness. Warning text can be viewed using:
[notfound,warnings]=loadlibrary(...)
> In loadlibrary at 399
??? Error using ==> loadlibrary at 480
There was an error loading the library "D:\...\OmsUmxMC.lib"
D:\...UmxMC.lib ist keine zulässige Win32-Anwendung.
Caused by:
Error using ==> loaddefinedlibrary
D:\...\OmsUmxMC.lib ist keine zulässige Win32-Anwendung.
Kann mir jemande weiter helfen ich verzweifle noch daran
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 27.11.2012, 15:22
Titel: Re: Error bei MEX File Erstellung
|
 |
Hallo AGE,
Zitat: |
test1.c:8 No newline at end of file
Error test1.c: .\OmsUmxMC.h: 124 unrecognized declaration
lcc preprocessor warning: D:\...\datei1.h:30 D:\...\OmsUmxMC.h:18 No newline at end of file |
Also, ich finde diese Meldungen ziemlich klar. Ich empfehle zunächst mal an den File-Enden Newline Zeichen einzufügen (also einen Zeilenumbruch). Dann zeige uns noch den Inhalt der Zeile 124 im File OmsUmxMC.h. Sollten dort z.B. C++-Befehle stehen, wäre die Verwenden des C-Compilers LCC nicht sinnvoll. Wieso verwendest Du nicht MSVC, wenn Du ihn doch installiert hast?
Gruß, Jan
|
|
|
AGE |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 24.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.11.2012, 15:47
Titel: problem mex
|
 |
hi
danke für die schnelle antwort
test1.c
datei1
in DEMO1.C sind alle funktionen wie gesgat in C gibts kein fehler nur in Matlab
ich kann nur den compiler auswählen
|
|
|
AGE |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 24.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.11.2012, 15:52
Titel: problem mex
|
 |
upps zeile
124 problem und folgende
deswegen hatte ich in matlab probiert
gibt auch eine fehlermeldung aus
wie schon gecshrieben
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 28.11.2012, 10:23
Titel: Re: problem mex
|
 |
Hallo AGE,
Zitat: |
... in C gibts kein fehler nur in Matlab |
Es scheint hier ein grundsätzliches Missverständnis zu geben: Die Compilierung findet im C-Compiler statt. Du hast den LCC ausgewählt, der mit Matlab mitgeliefert wird. Dieser ist alt, wobei "veraltet" besser passen würde. Die Fehler haben also nichts mit Matlab zu tun, sondern damit, dass der Compiler den Code nicht versteht. Mit "in C gibnt es keine Fehler" meinst Du wahrscheinlich, das ein moderner Compiler den Code übersetzen kann, oder? Dann beutze doch einen modernen Compiler. Die MSVC-compiler kann man aus den frei verfügbaren SDKs installieren.
Probleme im Compiler lassen sich nicht beeinflussen, in dem man eine Library in Matlab lädt. Das sind ja zwei unterschiedliche Programme.
Gruß, Jan
|
|
|
AGE |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 24.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.11.2012, 12:41
Titel:
|
 |
hallo,
also ich habe jetzt einen anderen compiler
beim erstellen der mex datei bekomm ich jetzt folgenden fehler
mir scheint es so als gibt es bei der DLLIMPORT probleme.
das DLLIMPORT wird in einem header behandelt die zugehörige *.lib liegt im gleichen ordner
|
|
|
denny |

Supporter
|
 |
Beiträge: 3.853
|
 |
|
 |
Anmeldedatum: 14.02.08
|
 |
|
 |
Wohnort: Ulm
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 28.11.2012, 16:40
Titel:
|
 |
Hallo
Zitat: |
mir scheint es so als gibt es bei der DLLIMPORT probleme.
das DLLIMPORT wird in einem header behandelt die zugehörige *.lib liegt im
gleichen ordner |
Dass muss dann den MEX auch mitteilen:
|
|
|
|
|
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 - 2025
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.
|
|