grafische Ausgabe eines C Progs über OpenGL

Snipes

Registriert
Thread Starter
Dabei seit
25.10.2014
Beiträge
4
Reaktionspunkte
0
Hallo Leute,

im Studienfach Angew. Informatik sollen wir eine .c Datei ausführen. Diese beinhaltet die grafische Ausgabe eines sich drehenden 3D -Würfel über OpenGL. Das Programm wurde auf einem Windows BS geschrieben, weswegen ich nun unter Mac OS ungeeignete Befehle habe. Es fängt alles im "include" teil an.

Folgendes ist aufgeführt:

#include <Windows.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>
#include "opengl-magic.h"

Gibt es Alternativen für den Mac damit ich dieses Programm zum laufen bekomme?

Gruß
 
Nope. windows.h heißt, dass das Programm vermutlich windows apis nutzt. Bleibt dir also nichts anderes über, als den gesamten Code Fall für Fall durchzu schauen, oder doch unter Windows laufen zu lassen.

Oder sowas wie Cross-Over. Ist aber auch anschauen und testen obs geht. http://en.wikipedia.org/wiki/CrossOver_(software)
 
#include <OpenGL/gl.h>
#include <OpenGL/glu.h>
#include <GLUT/glut.h>

Ist es auf OSX (leider), wobei du das mit einem Symlink auch erledigen könntest. Um das fehlende windows.h kommst du aber wohl nicht rum, hier brauchst du Windows (oder etwas, das ein solches emuliert/sonstwas macht).
 
Danke für eure Antworten, dachte im Vorfeld, dass es einfachere Möglichkeiten gibt... Denke ich werde mich nun in erster Instanz an meinen prof wenden und auf mögliche Hilfen hoffen. Ansonsten muss ich wohl auf die stationären PC's der Uni ausweichen...
 
Es gibt eigentlich keinerlei Grund für die Nutzung von Win APIs, außer der Bequemlichkeit der Mitarbeiter. Gibt genug gute plattformunabhängige Bibliotheken etc.
OpenGL gibt es auf anderen Systemen auch, auf OSX musst du halt die Header ändern, wie in meinem Post steht.
 
über die meisten unis kriegst du doch windows lizenzen gratis als student…

aber ohne jetzt die source zu kennen, die meisten uni vorlesungs programme sind jetzt sind nicht aufwändig programmiert.
ich denke mal die nutzen windows.h nur für die fenster erstellung, um da dann den open gl context drin laufen zu lassen.
sollte vom aufwand des umprogrammierens nicht so groß sein…
 
Ich würde mal mit dem Prof. reden was der Quatsch mit Windows-only soll.
 
der prof für "angewandte" informatik wird sagen, "die haben halt überall windows" ;)
 
danke für eure Antworten.
Habe mit dem Prof. gesprochen, und er konnte mir schon weiterhelfen. In dem verwendeten c Programm kann ich dei benutzte Windows.h bib anscheinend getrost weglassen, ich musste lediglich die Namen der Bib's für OpenGL im Namen verändern, wie Kaito es erwähnt hat.

Nun sollen wir dieses c Programm über das Kommandofenster aufrufen. Habe mir in diesem Kontext X11 beschafft.
Folgender Befehl soll zum Kompilieren eingegeben werden:

gcc -Wall -O cube-3c.c opengl-magic-double.c -lGL -lGLU -lglut -o cube-3c

Folgenden Fehler bekomme ich dann von xTerm: ld: library not found for -lGL

Anscheinend existieren diese Bib's -lGL,... nicht in dem eigentlichen Ordner, oder heißen unter Mac anders. Hat da jemand von euch Infos drüber?

Gruß
 
es ist ein framework, daher statt -lGL halt -framework OpenGL
gleiches gilt für GLUT
 
es ist ein framework, daher statt -lGL halt -framework OpenGL
gleiches gilt für GLUT

gcc -Wall -O cube-3c.c opengl-magic-double.c -framework OpenGL -framework GLUT -o cube-3c


hat funktioniert! Zwar mit 5 Warndings über veraltete Funktionen, aber es lies sich ausführen.
Vielen Dank!!
 
Zurück
Oben Unten