Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Forentreff 2012     
Bücher-Shop mit Amazon (Buchkategorien)C++ : Referenzen zu C++ : C++ Builder : Visual C++ : C# : Java : Spieleprogrammierung : Systemprogrammierung Linux : Software-Entwicklung : .NET : Compilertechnik : Algorithmen & Datenstrukturen : Objektorientierung : Entwurfsmuster : UML : eXtreme Programming : Scrum : Projektmanagement : Software-Testing : Datenbanken : Tom DeMarco : Dilbert : User Friendly
C/C++ Forum :: Linux/Unix ::  Ich kann nicht kompillieren unter OpenSuse:(     Zeige alle Beiträge auf einer Seite Auf Beitrag antworten
Autor Nachricht
AmateurSuse
Unregistrierter




Beitrag AmateurSuse Unregistrierter 14:42:47 01.09.2010   Titel:   Ich kann nicht kompillieren unter OpenSuse:(            Zitieren

Hallo Liebe Leute,

als ich versucht habe unter opensuse zu kopillieren habe ich folgende Fehlermeldung erhalten:

Code:
/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../lib64/crt1.o: In function `_start':
/usr/src/packages/BUILD/glibc-2.11.2/csu/../sysdeps/x86_64/elf/start.S:109: undefined reference to `main'
collect2: ld gab 1 als Ende-Status zurück
Code:
/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../lib64/crt1.o: In function `_start':
/usr/src/packages/BUILD/glibc-2.11.2/csu/../sysdeps/x86_64/elf/start.S:109: undefined reference to `main'
collect2: ld gab 1 als Ende-Status zurück
Code:
/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../lib64/crt1.o: In function `_start':
/usr/src/packages/BUILD/glibc-2.11.2/csu/../sysdeps/x86_64/elf/start.S:109: undefined reference to `main'
collect2: ld gab 1 als Ende-Status zurück


kann mir vllt jemand sagen womit das Problem zu tun hat?
Also HelloWorld etc funktioniert, nur bei einem anderem Programm erscheint immer diese Fehlermeldung.

Bitte um Hilfe
nman
Moderator

Benutzerprofil
Anmeldungsdatum: 19.02.2002
Beiträge: 12947
Beitrag nman Moderator 15:19:42 01.09.2010   Titel:              Zitieren

Zeig bitte Deinen Code und Deinen Compiler-Aufruf.

_________________
…but tuesday's just as bad.
Ponto
Mitglied

Benutzerprofil
Anmeldungsdatum: 01.08.2004
Beiträge: 1770
Beitrag Ponto Mitglied 16:34:27 01.09.2010   Titel:              Zitieren

Du hast vergessen, die main()-Funktion zu schreiben.
Amateursuse
Unregistrierter




Beitrag Amateursuse Unregistrierter 23:37:56 01.09.2010   Titel:              Zitieren

und zwar habe ich diesen code mit embaddet matlab erzeugt:
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*
 * beispiel.c
 *
 * Embedded MATLAB Coder code generation for M-function 'beispiel'
 *
 * C source code generated on: Wed Sep 01 12:28:52 2010
 *
 */

/* Include files */

#include
"rt_nonfinite.h"
#include
"beispiel.h"

/* Type Definitions */

/* Named Constants */

/* Variable Declarations */

/* Variable Definitions */

/* Function Declarations */

/* Function Definitions */

void beispiel(real_T eml_a, const real_T eml_b[3], const real_T eml_c[9])
{
}
/* End of Embedded MATLAB Coder code generation (beispiel.c) */
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*
* beispiel.c
*
* Embedded MATLAB Coder code generation for M-function 'beispiel'
*
* C source code generated on: Wed Sep 01 12:28:52 2010
*
*/

/* Include files */

#include
"rt_nonfinite.h"
#include
"beispiel.h"

/* Type Definitions */

/* Named Constants */

/* Variable Declarations */

/* Variable Definitions */

/* Function Declarations */

/* Function Definitions */

void beispiel(real_T eml_a, const real_T eml_b[3], const real_T eml_c[9])
{
}
/* End of Embedded MATLAB Coder code generation (beispiel.c) */
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*
 * beispiel.c
 *
 * Embedded MATLAB Coder code generation for M-function 'beispiel'
 *
 * C source code generated on: Wed Sep 01 12:28:52 2010
 *
 */

/* Include files */

#include
"rt_nonfinite.h"
#include
"beispiel.h"

/* Type Definitions */

/* Named Constants */

/* Variable Declarations */

/* Variable Definitions */

/* Function Declarations */

/* Function Definitions */

void beispiel(real_T eml_a, const real_T eml_b[3], const real_T eml_c[9])
{
}
/* End of Embedded MATLAB Coder code generation (beispiel.c) */



wie erzeuge ich denn die main() funktion
AmateurSuse
Unregistrierter




Beitrag AmateurSuse Unregistrierter 23:41:25 01.09.2010   Titel:              Zitieren

C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/*
 * beispiel.h
 *
 * Embedded MATLAB Coder code generation for M-function 'beispiel'
 *
 * C source code generated on: Wed Sep 01 12:28:52 2010
 *
 */


#ifndef
__BEISPIEL_H__
#define
__BEISPIEL_H__
/* Include files */
#include
<math.h>
#include
<stdlib.h>
#include
<string.h>

#include
"rtwtypes.h"
#include
"beispiel_types.h"

/* Type Definitions */

/* Named Constants */

/* Variable Declarations */

/* Variable Definitions */

/* Function Declarations */

extern void beispiel(real_T eml_a, const real_T eml_b[3], const real_T eml_c[9]);
#endif

/* End of Embedded MATLAB Coder code generation (beispiel.h) */
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/*
* beispiel.h
*
* Embedded MATLAB Coder code generation for M-function 'beispiel'
*
* C source code generated on: Wed Sep 01 12:28:52 2010
*
*/


#ifndef
__BEISPIEL_H__
#define
__BEISPIEL_H__
/* Include files */
#include
<math.h>
#include
<stdlib.h>
#include
<string.h>

#include
"rtwtypes.h"
#include
"beispiel_types.h"

/* Type Definitions */

/* Named Constants */

/* Variable Declarations */

/* Variable Definitions */

/* Function Declarations */

extern void beispiel(real_T eml_a, const real_T eml_b[3], const real_T eml_c[9]);
#endif

/* End of Embedded MATLAB Coder code generation (beispiel.h) */
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/*
 * beispiel.h
 *
 * Embedded MATLAB Coder code generation for M-function 'beispiel'
 *
 * C source code generated on: Wed Sep 01 12:28:52 2010
 *
 */


#ifndef
__BEISPIEL_H__
#define
__BEISPIEL_H__
/* Include files */
#include
<math.h>
#include
<stdlib.h>
#include
<string.h>

#include
"rtwtypes.h"
#include
"beispiel_types.h"

/* Type Definitions */

/* Named Constants */

/* Variable Declarations */

/* Variable Definitions */

/* Function Declarations */

extern void beispiel(real_T eml_a, const real_T eml_b[3], const real_T eml_c[9]);
#endif

/* End of Embedded MATLAB Coder code generation (beispiel.h) */


C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/*
 * rt_nonfinite.h
 *
 * Embedded MATLAB Coder code generation for M-function 'beispiel'
 *
 * C source code generated on: Wed Sep 01 12:28:52 2010
 *
 */


#ifndef
__RT_NONFINITE_H__
#define
__RT_NONFINITE_H__

#if
defined(_MSC_VER) && (_MSC_VER <= 1200)
#include
<float.h>
#endif
#include
<stddef.h>
#include
"rtwtypes.h"

extern real_T rtInf;
extern real_T rtMinusInf;
extern real_T rtNaN;
extern real32_T rtInfF;
extern real32_T rtMinusInfF;
extern real32_T rtNaNF;
extern void rt_InitInfAndNaN(size_t realSize);
extern boolean_T rtIsInf(real_T value);
extern boolean_T rtIsInfF(real32_T value);
extern boolean_T rtIsNaN(real_T value);
extern boolean_T rtIsNaNF(real32_T value);

#endif

/* End of Embedded MATLAB Coder code generation (rt_nonfinite.h) */
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/*
* rt_nonfinite.h
*
* Embedded MATLAB Coder code generation for M-function 'beispiel'
*
* C source code generated on: Wed Sep 01 12:28:52 2010
*
*/


#ifndef
__RT_NONFINITE_H__
#define
__RT_NONFINITE_H__

#if
defined(_MSC_VER) && (_MSC_VER <= 1200)
#include
<float.h>
#endif
#include
<stddef.h>
#include
"rtwtypes.h"

extern real_T rtInf;
extern real_T rtMinusInf;
extern real_T rtNaN;
extern real32_T rtInfF;
extern real32_T rtMinusInfF;
extern real32_T rtNaNF;
extern void rt_InitInfAndNaN(size_t realSize);
extern boolean_T rtIsInf(real_T value);
extern boolean_T rtIsInfF(real32_T value);
extern boolean_T rtIsNaN(real_T value);
extern boolean_T rtIsNaNF(real32_T value);

#endif

/* End of Embedded MATLAB Coder code generation (rt_nonfinite.h) */
C/C++ Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/*
 * rt_nonfinite.h
 *
 * Embedded MATLAB Coder code generation for M-function 'beispiel'
 *
 * C source code generated on: Wed Sep 01 12:28:52 2010
 *
 */


#ifndef
__RT_NONFINITE_H__
#define
__RT_NONFINITE_H__

#if
defined(_MSC_VER) && (_MSC_VER <= 1200)
#include
<float.h>
#endif
#include
<stddef.h>
#include
"rtwtypes.h"

extern real_T rtInf;
extern real_T rtMinusInf;
extern real_T rtNaN;
extern real32_T rtInfF;
extern real32_T rtMinusInfF;
extern real32_T rtNaNF;
extern void rt_InitInfAndNaN(size_t realSize);
extern boolean_T rtIsInf(real_T value);
extern boolean_T rtIsInfF(real32_T value);
extern boolean_T rtIsNaN(real_T value);
extern boolean_T rtIsNaNF(real32_T value);

#endif

/* End of Embedded MATLAB Coder code generation (rt_nonfinite.h) */
ProgChild
Autor

Benutzerprofil
Anmeldungsdatum: 29.12.2003
Beiträge: 2261
Beitrag ProgChild Autor 15:32:01 02.09.2010   Titel:              Zitieren

Kann es sein, dass Matlab eine Bibliothek und kein Programm braucht? Dann solltest du auch nicht versuchen, ein Programm, sondern eine Bibliothek zu kompilieren...

Willst du jetzt Matlab in dein Programm einbetten, oder willst du eine Funktion schreiben, die in Matlab zur Verfügung steht?

_________________
meine Homepage | Artikel: GNU Autotools (PDF) | Software: Wallpaper Action, Netwalker | Bibliotheken: FoxTray


Zuletzt bearbeitet von ProgChild am 15:32:37 02.09.2010, insgesamt 1-mal bearbeitet
AmateurSuse
Unregistrierter




Beitrag AmateurSuse Unregistrierter 21:08:40 02.09.2010   Titel:              Zitieren

Also ich wollte eine Matlab Funktion (.m) in .c umwandeln und dies dann über die Konsole abrufen können, also kompilieren.
Die Umwandlung von .m zu .c erfolgt über eine Toolbox von Matlab (Embedded lMatlab). Ich bekomme dann aber viele .h mit ausgegeben die der egtl. mnatlab-funktion als include-file dienen.
nun kriege ich aber irgendwie diese fehlermeldung.
ProgChild
Autor

Benutzerprofil
Anmeldungsdatum: 29.12.2003
Beiträge: 2261
Beitrag ProgChild Autor 21:26:34 02.09.2010   Titel:              Zitieren

AmateurSuse schrieb:
Also ich wollte eine Matlab Funktion (.m) in .c umwandeln und dies dann über die Konsole abrufen können, also kompilieren.
Die Umwandlung von .m zu .c erfolgt über eine Toolbox von Matlab (Embedded lMatlab). Ich bekomme dann aber viele .h mit ausgegeben die der egtl. mnatlab-funktion als include-file dienen.
nun kriege ich aber irgendwie diese fehlermeldung.

Wie hier schon erwähnt, musst du eine main-Funktion schreiben, die die generierte Funktion aufruft. Wie das geht, erfährst du vermutlich in so ziemlich jedem Buch über C in den ersten 10 Seiten.

_________________
meine Homepage | Artikel: GNU Autotools (PDF) | Software: Wallpaper Action, Netwalker | Bibliotheken: FoxTray
rüdiger
Moderator

Benutzerprofil
Anmeldungsdatum: 11.07.2001
Beiträge: 22820
Beitrag rüdiger Moderator 21:28:52 02.09.2010   Titel:              Zitieren

Ponto hat schon gesagt, was dein Problem ist:

Ponto schrieb:
Du hast vergessen, die main()-Funktion zu schreiben.


Matlab spuckt dir offenbar nur die Funktion und kein komplett fertiges Programm aus.

(Falls du nicht weißt, was die main()-Funktion ist, solltest du dir ein Buch über C besorgen).

_________________
.
AmateurSuse
Unregistrierter




Beitrag AmateurSuse Unregistrierter 21:39:50 02.09.2010   Titel:              Zitieren

Achso:) schön zu wissen, dass man so etwas braucht, bin egtl ein neuling was programmieren angeht:)
ich danke euch vielmals für eure hinweise.

eine frage hätte ich noch? muss ich dann die main funktion mit dem compiler aufrufen? und ist meine generierte funktion als include angeben?
nman
Moderator

Benutzerprofil
Anmeldungsdatum: 19.02.2002
Beiträge: 12947
Beitrag nman Moderator 14:15:59 03.09.2010   Titel:              Zitieren

Du solltest Dir wirklich irgendein Buch zu den Grundlagen von C holen. Matlab spuckt Dir eine Funktion aus, die Du in einem C-Programm aufrufen kannst.

Das C-Programm braucht natürlich eine main-Funktion und das Programm kompilierst Du dann. Die Binary, die Dir der Compiler ausspuckst, kannst Du aufrufen.

_________________
…but tuesday's just as bad.
C/C++ Forum :: Linux/Unix ::  Ich kann nicht kompillieren unter OpenSuse:(   Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.