• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

OpenGL: glut einbinden unter Mac OS X

  • Ersteller Schnapper
  • Erstellt am

Schnapper

Gast
Hi,

ich würde echt sehr gerne mein kleines OpenGL-Programm kompilieren. Geht aber nicht! Also, dass die glut.h gefunden wird, hab ich jetzt schonmal geschafft, Jubel!
Aber die Compiler-Anweisung "-lglut" oder auch "-lGLUT" führt zu einer Fehlermeldung, weil der einfach nicht weiß, wie er die entsprechende lib einbinden soll!

Ich hab LIBRARY_PATH auf den Pfad von Glut gesetzt, aber das bringts nicht. Kann mir jemand weiterhelfen?
 

Squart

Pomme Etrangle
Registriert
29.01.04
Beiträge
910
Ist Glut tatsächlich eine Library oder ein Framework (oder beides)? Wo hast du denn glut.h gefunden?

Ich habe mir für das erlernen von OpenGL ein kleines Shell-Skript (GLComp.sh) geschrieben, damit ich nicht immer alle Compileranweisungen eingeben muss:
Code:
if [ $# -lt 1 ] ; then
        echo "usage: GLComp.sh file1 file2 ..."
        exit 1
fi

rm ./CurrentProgramm;
rm ./*~;

gcc -framework GLUT -framework OpenGL $* -o CurrentProgramm;
./CurrentProgramm;
Die vorletzte Zeile dürfte dich interessieren.

Viele Grüße
Squart
 

Schnapper

Gast
Cool!

In der Tat, wenn man es als Framework verwendet, dann klappt das wunderbar!
Ich hatte das ganze Zeug vor nem Jahr ca. unter Linux gemacht und wollte es jetzt mal auf meinen Mac portieren. Komisch, dass das da ein Framework ist anstatt einer lib, weil prinzipiell ist es ja beides ein Unix-System. manchmal sind die Unterschiede schon groß.

Ich hab das jetzt so:
ein Shellskript namens ccgl:
--------------------
#! /bin/bash
CPATH=$HOME/FH/sem4/computergrafik/programme/ogl:/System/Library/Frameworks/GLU$
export CPATH
export LIBRARY_PATH

NAME=`basename $1 .c`
shift
gcc -o ${NAME} ${NAME}.c $* -framework GLUT -framework OpenGL
-----------------------------------------------------


die ogl.h inkludiert ein paar Dinge und definiert Farben und so. Die Glut.h findet man dort, wo der CPATH als zweites, also nach dem ':', hinzeigt.

Dazu hab ich dann noch ein Makefile geschrieben, welches auf jede .c-Datei im aktuellen Verzeichnis ccgl ausführt:

------------------------------
CC = ccgl
SRCS = $(shell ls *.c)
BIN = $(patsubst %.c,%,$(SRCS))

.PHONY: all depend clean dist-clean
all: $(BIN)
%: %.c
$(CC) $@

-include depend.mak
depend:
gcc -MM $(SRCS) > depend.mak

clean:
rm -f *~
rm -f DEADJOE
rm -f core

dist-clean: clean
rm -f $(BIN) depend.mak

cleanall: dist-clean
rm -f *.o



Coole Sache, oder?
Und jezt erklär mir mal einer: Was genau ist eigentlich ein Framework im Vergleich zu einer lib?
 
Zuletzt bearbeitet von einem Moderator: