Beispielprogramm aus MOS SDK nicht compilierbar

Ihr habt ein Problem mit C++ oder anderen Sprachen ? Dann seit Ihr in diesem Forum genau richtig! Hier können alle Fragen gestellt werden, die mit Programmierung (MorphOS, Linux, BeOS, BSD,...) zu tun haben.

Moderatoren: analogkid, roschmyr

Benutzeravatar
Yvan
Mitglied
Mitglied
Beiträge: 56
Registriert: 26 Aug 2007, 15:18

Beispielprogramm aus MOS SDK nicht compilierbar

Beitragvon Yvan » 26 Aug 2007, 15:29

Hallo zusammen,

ich habe versucht ein Demo Programm aus dem Pegasos SDK zu compilieren (aus Examples/MUI balancing.c (habe es angehängt).

Ich bekomme aber folgende Fehlermeldungen:

Ram Disk:> gcc -Wall Balancing.c -o balancing
Balancing.c: In function `main':
Balancing.c:132: warning: control reaches end of non-void function
/gg/ppc-morphos/lib/libaboxstubs.a(SetAttrs.o): In function `SetAttrs':
SetAttrs.o(.text+0x1a): undefined reference to `IntuitionBase'
SetAttrs.o(.text+0x2a): undefined reference to `IntuitionBase'
collect2: ld returned 1 exit status

Gut, ich dachte mir der Programmer hätte vergessen die intuition.library und hat den Code nicht getestet.

Das heisst ich habe folgenden Code hinzugefügt:


struct IntuitionBase *IntuitionBase;

IntuitionBase=(struct IntuitionBase*)OpenLibrary("intuition.library",50);


Auch angehängt als Datei balancing_ueben.c


Kompilieren zeigt folgende Fehler:

Ram Disk:> gcc -Wall Balancing_ueben.c -o balancing
/gg/ppc-morphos/lib/libaboxstubs.a(SetAttrs.o): In function `SetAttrs':
SetAttrs.o(.text+0x1a): undefined reference to `IntuitionBase'
SetAttrs.o(.text+0x2a): undefined reference to `IntuitionBase'
collect2: ld returned 1 exit status



Die Fehler sind ziemlich ähnlich, but what the hell is wrong??????

Kann mir jemand einen Tip geben?

Gruss
Yvan
Dateianhänge
Balancing.c
ursrpünglicher Code
(4.06 KiB) 230-mal heruntergeladen
Balancing_ueben.c
von mir angepasster Code
(4.39 KiB) 201-mal heruntergeladen

Benutzeravatar
geit
Seniormember
Seniormember
Beiträge: 857
Registriert: 30 Mär 2006, 12:17
Wohnort: 48477 Hörstel
Kontaktdaten:

Beitragvon geit » 26 Aug 2007, 16:03

Hab jetzt keine Zeit mir das genau anzusehen, aber warscheinlich
brauchst du nur ein -lauto zusätzlich beim compilieren angeben.

Da du aber schon die Base und das OpenLibrary() eingebaut hast, fehlt
wohl nur noch der

#include <proto/intuition.h>


Geit

Benutzeravatar
DrB
FireWire-Beschwörer
FireWire-Beschwörer
Beiträge: 1350
Registriert: 19 Sep 2004, 18:01
Wohnort: Hamburg-Harburg

Re: Beispielprogramm aus MOS SDK nicht compilierbar

Beitragvon DrB » 26 Aug 2007, 17:22

Yvan hat geschrieben:Hallo zusammen,

ich habe versucht ein Demo Programm aus dem Pegasos SDK zu compilieren (aus Examples/MUI balancing.c (habe es angehängt).

Ich bekomme aber folgende Fehlermeldungen:

Ram Disk:> gcc -Wall Balancing.c -o balancing


Mit -noixemul compilieren, dann bekommst du einen startup der
die fehlenden referencen enthaelt. Das ganze wird im example
ja auch so gemacht.

gcc -Wall -noixemul -o Balancing Balancing.c

Benutzeravatar
Yvan
Mitglied
Mitglied
Beiträge: 56
Registriert: 26 Aug 2007, 15:18

Re: Beispielprogramm aus MOS SDK nicht compilierbar

Beitragvon Yvan » 31 Aug 2007, 09:53

DrB hat geschrieben:Mit -noixemul compilieren, dann bekommst du einen startup der
die fehlenden referencen enthaelt. Das ganze wird im example
ja auch so gemacht.

gcc -Wall -noixemul -o Balancing Balancing.c


Oh toll, Danke. Du meinst ich hätte das Makefile ein bisschen genauer anschauen sollen und wär dann von selbst draufgekommen.

Und mit ein bisschen googeln habe ich rausgefunden, dass damit die Libnix statt ixemul Library benutzt wird.


Zurück zu „Code-Küche“



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste