Na los, jetzt kompilieren wir mal XviD

perpetuum.mobile

Grand Admiral Special
Mitglied seit
06.02.2003
Beiträge
2.849
Renomée
21
Standort
Hinter dir!
Welcher Profi stand nicht auch schon mal vor dem Problem: Wie kompiliere ich jetzt den Sourcecode?

Und genau das Problem hat der leicht fortgeschrittene Programmierer ShOOtist jetzt. Da seit einigen Tagen die XviD-builds von gamr nicht mehr zu bekommen sind, (seine Seite ist leider down, ich glaube wegen einem Umzug) will ich nun mein XviD selber kompilieren.
Gesagt, getan. Erst mal den Sourcecode besorgt, einmal über xvid.org als tar.gz und dann nochmal über WinCVS. Aber nun stand ich vor dem Problem eine Binary irgendwie hinzukriegen.

Als Erstes habe ich mal google befragt und bezüglich xvid auch einiges gefunden. Nur das bezog sich oft auf MS Visual C++ 6.0/5.0. Wie ich das nun mit free-compilern mache, hab ich nicht gefunden. Meine eigenen Versuche mit Dev-C++ die .dsp Projektdatei zu importieren, endeten immer nur Fehlerüberschwemmungen.

Aber es gibt ja auch noch ein Verzeichnis namens "doc". "INSTALL" hat mir zumindest etwas weiter geholfen. Ich bin dann auf die Idee gekommen "Cross compiling xvidcore" zu machen. Also unter Linux mal mein VFW-Frontend zu kompilieren. Sammelfreudig wie ich bin, hab ich schnell meine Knoppix 3.4 CD rausgeholt, denn meine Linux-Kontakte hielten sich bisher in Grenzen. Mit dem vorkonfigurierten Linux sollten sich ja eigentlich schnell Ergebnisse erzielen lassen. Nur will selbst mit Anleitung dort nix hinhauen. Ich bekomm beim "make" dann immer nur Fehler 127 und auch beim "configure" habe ich nur Probleme...

Man eigentliches Anliegen ist daher folgendes:
Wie komme ich auf geeignetem Wege zu meinem XviD mit einem free-compiler ? Welchen Weg würdet ihr einschlagen, wo liegen Vor- und Nachteile?

So, bitte erschlagt mich jetzt nicht für meine blöde Frage ;) .
 
Normalerweise wird bei ./configure ja angezeigt, was ihm fehlt. Danach musst du gehen.
 
wie man das ganze fuer linux compiliert weiss ich auch nicht.
ich habe aber versucht es mit ms-vs6 fuer win32 zu kompilieren und hab massig warnings und errors bekommen.
man muss sich noch extra eine nasm.exe runterladen, die im bin-verzeichnis von visual studio platziert werden muss (http://nasm.sourceforge.net/wakka.php?wakka=HomePage ).
hab ich auch erst durch stoebern im forum erfahren.
evtl ist diese datei auch fuer den free-compiler noetig.
 
Ich könnte dir wahrscheinlich sagen, wie xvid unter Linux compiliert wird, nur wird das nicht mit Knoppix gehen (fehlt wahrscheinlich zu viel für). Außerdem ist ein cross-compile auch nicht gerade trivial. Ich würde vorschlagen, du konzentrierst dich auf eine Windows-Lösung. ;)
 
Original geschrieben von PuckPoltergeist
Ich könnte dir wahrscheinlich sagen, wie xvid unter Linux compiliert wird, nur wird das nicht mit Knoppix gehen (fehlt wahrscheinlich zu viel für). Außerdem ist ein cross-compile auch nicht gerade trivial. Ich würde vorschlagen, du konzentrierst dich auf eine Windows-Lösung. ;)

Hmm, naja, im Handbuch (oder Notiz, je nachdem wie man es nennt) steht ja schon fast ne Anleitung zum cross-compile drinne.
Außerdem hab ich auch ne Liste von den nötigen Programmen dort gesehen und mich mal mit so nem Paketprogramm oder wie das heißt bei Knoppix umgesehn. Ist eigentlich alles installiert (g++, GNU make und Co.). Deshalb bin ich ja etwas verwirrt.

Original geschrieben von tes
wie man das ganze fuer linux compiliert weiss ich auch nicht.
ich habe aber versucht es mit ms-vs6 fuer win32 zu kompilieren und hab massig warnings und errors bekommen.
man muss sich noch extra eine nasm.exe runterladen, die im bin-verzeichnis von visual studio platziert werden muss (http://nasm.sourceforge.net/wakka.php?wakka=HomePage ).
hab ich auch erst durch stoebern im forum erfahren.
evtl ist diese datei auch fuer den free-compiler noetig.

Naja, ich dachte bei Dev-C++ ist doch schon alles mit dabei, oder? Das benutzt ja auch nur MingW als Compiler, und das NASM war doch auch nur bei VS6 nötig, oder irre ich mich da wieder? Jedenfalls ist bei Dev-C++ mein Problem bisher, dass ich das Projekt immer importieren muss. Und genau da entstehen dann immer die ersten Fehler. Aber ich werde mal schauen ob ich da auch NASM brauch.

danke!
 
hab devc++ jetzt auch drauf (v4.9.8.10).
also importieren laesst sich die project-datei problemlos.
"...\xvidcore-1.0.1\build\win32\libxvidcore.dsp" beim import angeben und alle noetigen project-dateien werden in den compiler geladen.
 
Stimmt. Aber beim kompilieren kommen immer errors. Ich hab übrigens immer versucht das vfw (Video for Windows) frontend zu importieren. Beim aktuellsten Sourcecode (1.1) traten beim vfw folgende Fehler auf:
"$(InputPath)"
"$(InputPath)"
konnten nicht gefunden werden, bitte manuell hinzufügen. Dasselbe beim 1.0.1 src-code.

Und beim Importieren von dem "...\xvidcore-1.0.1\build\win32\libxvidcore.dsp" (also dem sourcecode der offiziellen version 1.0.1) bekomme ich auch immer nur errors.
Fehler:
konnte wieder net gefunden werden... manuell hinzufügen.
"..\..\doc\INSTALL"
"..\..\doc\README"
"..\..\src\utils\ratecontrol.h"

Nur, ratecontrol.h gibt es nicht, weder in der neusten cvs-Fassung, noch beim offiziellen 1.0.1 code oder beim Daily Snapshot von xvid.org.

Ich hab mir auch mal per CVS die ratecontrol.h und .c geholt, nur will das immer noch nirgends klappen.

Ich erklär mal mein Vorgehen, vielleicht fällt dir auf was ich falsch mache:

  1. Den Sourcecode entweder über xvid.org downloaden oder über wincvs mit den Kommandos ( cvs -d:pserver:anonymous@cvs.xvid.org:/xvid login / cvs -d:pserver:anonymous@cvs.xvid.org:/xvid co -R -r dev-api-4 xvidcore ) bekommen.
  2. Jetzt wird in Dev-C++ 4.9.8.0 per "MS Visual C++ Projekt importieren" die Projektdatei von dem libxvidcore, vfw oder dem dshow angegeben.
  3. Trotz der Importerrors, die auftreten, wird "Kompilieren" angewählt. Es folgen immer irgendwelche Fehler, die mal was nicht finden, oder mal was nicht deklariert ist usw.
    [/list=1]

    Ich versteh nicht so ganz wo meine Fehler liegen. Bei Dev-C++ sollte doch alles dabei sein, oder? Kann jemand mit Dev-C++ oder nem anderem Free-compiler einen erfolgreichen Versuch hinlegen?
 
also, der ratecontrol-header wurde entfernt, siehe changelog patch 50 und 51.
in der project-datei verweist wohl noch irgendwo ein eintrag auf diese datei, das sollte dich nicht weiter stoeren.
und das verzeichnis doc wurde wohl durch docs ersetzt.

aber compilieren kann ich auch nicht, obwohl nur warnings kommen und zu guter letzt noch der error, das die exe nicht erstellt werden konnte.
normalerweise kann man die warnings ignorieren, sie weissen auf moegliche fehlerquellen hin (rundungsfehler/datenverfaelschung bei datentypwechsel oder aehnliches...), meist laesst sich das project trotzdem compilieren.
anscheinend fuehren hier die warnings zu folgefehlern.

ich habe aber ehrlich gesagt keine lust, mich in das project reinzulesen.
fremdcode laesst sich meist schwer lesen, wenn man mit den meisten funktionen nicht vertraut ist. :)

vll solltest du deine frage nochmals im xvid-forum stellen.

*daumendrueck* gruss tes
 
Original geschrieben von tes
also, der ratecontrol-header wurde entfernt, siehe changelog patch 50 und 51.
in der project-datei verweist wohl noch irgendwo ein eintrag auf diese datei, das sollte dich nicht weiter stoeren.
und das verzeichnis doc wurde wohl durch docs ersetzt.

aber compilieren kann ich auch nicht, obwohl nur warnings kommen und zu guter letzt noch der error, das die exe nicht erstellt werden konnte.
normalerweise kann man die warnings ignorieren, sie weissen auf moegliche fehlerquellen hin (rundungsfehler/datenverfaelschung bei datentypwechsel oder aehnliches...), meist laesst sich das project trotzdem compilieren.
anscheinend fuehren hier die warnings zu folgefehlern.

ich habe aber ehrlich gesagt keine lust, mich in das project reinzulesen.
fremdcode laesst sich meist schwer lesen, wenn man mit den meisten funktionen nicht vertraut ist. :)

vll solltest du deine frage nochmals im xvid-forum stellen.

*daumendrueck* gruss tes

Hab ich mir schon gedacht mit dem ratecontrol (musste ja erst gelöschte Dateien anzeigen lassen, eh ich das gefunden hab. Naja, dann muss ich mich vielleicht mal mit dem Intel-Compiler versuchen. Trotzdem danke für deine Hilfe!
 
Ich weiß gar nicht wo das Problem ist. Bei mri hat es ohne große Komplikatioenn geklappt.

Tip: Versucht erst einmal DVD2AVI (das Ursprüngl) zu kompilieren. Wenn das geht, geht auch xvid.

Im einzelnen (mit M$VC6):
- nasm (man sollte die nasmw.exe auch in nasm.exe umbennen in und den Pfad kopieren)
- Processor Pack 5
- evtl noch das aktuellst service pack (erst processor pack installieren!)

Dann nach Anleitung vorgehen. BEi libxvidcore gibt es nen Fehler. Die Variable std in der betreffenden Funkt in etwa std1 umbennen. Dananch geht alles wie gewünscht.
 
nun, es ging ja um das kompilieren mit devc++.
was man fuer vc6 braucht, hab ich ja schon im 3ten post geschrieben.
 
Hmm, nur hat es sich für mich angehört, als ob hier selbst keiner mit dem vc6 zurecht gekommen wäre...
 
Zurück
Oben Unten