2. DEVcpp-Umgebung für "Cross-Compiling" GP2X/WIN


BestNrXYZ

Member
Joined
Nov 17, 2005
Messages
372
Location
Oberhausen
LOCATION
Oberhausen
Hallo (angehende) Devs...

ich habe mir erlaubt, ein kleines HowTo zu schreiben, wie man sich eine 2. Umgebung von DEVcpp "baut", um C/C++/SDL-Programme auch mal unter Windows antesten zu können.

Falls es jemanden interessiert: http://www.elchs-kramkiste.de/lapurd/node/16.

Diskussionen darüber / konstruktive Kritiken bitte hier.

Falls das jetzt als Spam angesehen wird: Bitte kurz melden... ich tue sowas dann nicht wieder!

Greetz
BNrXYZ

P.S. Bitte beachten: Ist die erste Fassung. Einige Rechtschreibfehler sind wohl noch drin... sry 4 that
 
Hab mal kurz reingeschaut, aber soviel Mühe muss man sich nicht machen. Ich habe hier ein Dev-Cpp laufen, das per Knopfdruck entweder ARM oder Windows Binaries macht.

1.) Compiler Options
2.) Compiler set to configure -> Auf "+" klicken. ARM nennen
3.) Bei Directories und bei Programs die ARM equivalente eingeben

Danach kann man mit ALT-P - Compiler einfach von ARM nach Intel und zurück stellen (und danach jeweils ein Rebuild All).

Nix kopieren, nix doppelt installieren, klappt einfach :)
 
ah, das klingt interessant obwohl ich mich langsam mit der minlib anfreunde.
hatte vor ein paar wochen auch mal vor, parallel für windows zu kompilieren, habs aber nicht gebacken bekommen...

ich hab das eben mal gelesen und ich weiss nicht so genau, um was es da geht. irgendwie scheint dieses tutorial mitten in irgend einer beschreibung anzufangen.
auch was der "DEVcpp-Aufruf" sein soll, ist mir nicht klar.

naja, vielleicht versuch ich das nochmal, wenn ich mal wieder etwas mehr zeit habe.
 
kilroy said:
Nix kopieren, nix doppelt installieren, klappt einfach :)

Jo, hast du auch wieder Recht, aber bei meinen Recherchen heute im WWW habe ich einige Male von zerschossenen DEVcpp-Installationen nach DEVcpp-Updates gelesen :( und sowas wollte ich nicht... (kann sein, dass sich das auf ältere DEVcpp-Versionen bezog).

Dennoch: Danke für deinen Hinweis, aber nach den Installations"orgien" wegen der SDL_Mixer (siehe Thread "Sound-Probleme") habe ich keinen Bock auf sowas, zumindest nicht beim jetzigen "Entwicklungsstand".

Greetz
BNrXYZ
 
O-bake said:
auch was der "DEVcpp-Aufruf" sein soll, ist mir nicht klar

OK, danke... Werde ich verbessern/ klarer heraus arbeiten. Gemeint ist die Verknüpfung mit DEVcpp. Man kann DEVcpp ja z.B. direkt aus dem Installationsverzeichnis heraus starten (per (Doppel-)Klick auf die devcpp.exe). Zu dieser EXE lege ich mir per Senden an | Desktop eine Verknüpfung auf den Desktop und deren Eigenschaften erweitere ich dann um die genannte Option.

Frag bitte noch mal nach, falls noch nicht klar...

Greetz
BNrXYZ
 
Noch ein Aspekt, sry

<r><QUOTE author="O-bake"><s>
O-bake said:
</s>ah, das klingt interessant obwohl ich mich langsam mit der minlib anfreunde<e>
</e></QUOTE>

Ich porte mit AirPong ein Spiel, welches unter der GPL steht. Die Minilib kann ich deshalb vergessen (auch wenn sie imho Teile der ebenfalls unter GPL stehenden SDL-Libs verwendet und demzufolge auch unter der GPL steht / stehen müsste). <br/>
<br/>
Der AirPong-Port _muss_ wegen GPL auch unter GPL geschehen, also inclusive _aller_ Quellcodes...<br/>
<br/>
Greetz<br/>
BNrXYZ</r>
 
Ja und? Die Minilib darfst du doch veröffentlichen. Da steht nur drin, das eine Firma (GPH) dies nicht benutzen darf. Sonst ist das wohl ein Grant all...
 
Das ist nicht so einfach. 2 Lizenzen können nur miteinander kombiniert werden, wenn sie sich nicht widersprechen. Die GPL sagt aus, dass die Bedingungen der Lizenz für alle Anwender gleichermassen gelten muss (keine Diskriminierung), egal ob es non-commercial, commercial, Terroristen, Kinderschänder oder auch Mitarbeiter einer spezifischen Firma sind.

Weiterhin besagt die GPL, dass abgeleitete Werke aus der GPL wieder unter der GPL stehen müssen. Und "Werk" ist hier als vollständiges Programm zu sehen, nicht als Programmteil.

Sprich, du hast ein Programm mit GPL Sourcen und der Minilib. Stellst du es unter die minilib Lizenz verletzt du die GPL. Stellst du es unter die GPL verletzt du die Minilib Lizenz, weil durch die GPL auch kommerzielle Nutzer und GPH die Quellen benutzen dürfen.

Persönlich verstehe ich das Problem von ryleh nicht. Für sowas gibt es Cross-Licencing. Sprich, er stellt die Minilib unter mehrere Lizenzen, zum einen die GPL, weiterhin eine "Freeware-Lizenz" und zum anderen eine eigene, für die GPH Geld bezahlen muß wenn sie die Quellen nicht offenlegen wollen.
 
Vielleicht hat ihn einfach noch nie jemand angesprochen wegen dem Licensing System...

Ich persönlich mag die Minilib deutlich lieber als SDL - mal sehen was kommt...
 
kilroy said:
Vielleicht hat ihn einfach noch nie jemand angesprochen wegen dem Licensing System...

Kann sein, aber mein Englisch ist nicht gut genug dafür. Zudem wird er diese besondere Ausnahme nicht ohne (persönliche) Gründe gemacht haben.
kilroy said:
Ich persönlich mag die Minilib deutlich lieber als SDL - mal sehen was kommt...

Ich habe wegen der Lizenz-Probleme die Minilib bisher noch nicht angetestet. Ist die einfacher zu handeln als die SDL? Oder welche Vorteile hat sie?

Wäre nett, wenn du mal 2, 3 Satze dazu sagen könntest. :wink:

Danke und
Greetz
BNrXYZ
 
Ich benutze noch die "alte" Minilib 0.A, mittlerweile ist schon fast die runderneuerte 0.B incoming draussen.

Die 0.A bietet Basisfunktionen - initialisieren der Grafik, Pointer bereitstellen, Double Buffering. Inklusive einfach zu bedienendem Sound + Keyboard Interface (Sound Callback Routine). Der große Vorteil - damit gelinkte Programme sind nur ca. 50kb gross. (!)

Die 0.B wird in meinen Augen ein Meilenstein werden: Unter anderem kann sie die Video Direkt Wiedergabe per YUV, unterstützt Hardware Scaling, Gamma, Helligkeit sowie das eingebaute OSD, kann blitten und den Hardware Dithering Algorithmus einstellen...

Die 0.A bietet also nur eine deutlich geringere Dateigröße, Unabhängigkeit von SDL und mehr Geschwindigkeit - die 0.B wird jedoch wie o.g. viel mehr koennen, als die SDL je hergeben wird...

Zusammen mit dem CPUSpeed Patch von, hmm, vergessen wie sie hiessen, kann man mit der Minimal eigentlich alles machen, was der GP2x im Moment hergibt... SDL ist da eher der Klotz am Bein...

Für den Fall der einfachen Windows Portierung (die ja bei SDL einfacher geht) habe ich eine duallib geschrieben, die den anderen Weg geht: Sie "emuliert" unter Windows die minilib und macht so minilib programme unter Windows ausführbar (recompile).

Der andere Weg, SDL für den GP2x zu emulieren, jedoch die Minilib einzusetzen, ist auch ohne Probleme möglich, nur muss sich jemand da mal 1h Zeit nehmen für (falls noch nicht geschehen)...
 
Zunächst einmal Danke für die mehr als 3 Sätze :)
Hört sich sehr überzeugend an, vor allem, was du über die incoming Version schreibst.

Auf die Gefahr, dass ich nerve...

Wie sieht es mit Dokumentation aus?

Greetz
BNrXYZ
 
Ich muss mich von meiner geschilderten Methode distanzieren. Es gibt nämlich einen gravierenden Nachteil: Ruft man per Explorer eine *.dev-Datei auf, werden die in dem HowTo genannten Aufruf-Optionen naturgemäß nicht ausgewertet, es wird also der DEVcpp ohne alternatives Konfig-File gestartet.

Und damit wird das zuerst installierte DEVcpp gestartet, welches dann meint, es handelt sich um einen Erststart von DEVcpp, da ja keine Konfig-Files im persönlichen Ordner liegen.

Ich werde mich also den Compiler-Sets von DEVcpp zuwenden.

Deshalb EOT.

Greetz
BNrXYZ

P.S. Ich hoffe, ich habe niemanden auf die falsche Fährte gelockt. Falls doch, sry...
 
Back
Top