libx264 in c++ nutzen,...?

  • Wenn du mir sagst wie das geht und was ich mit dem Archiv machen soll?

    Alles schön in den MinGW Ordner entpacken. Die Verzeichnisstruktur sollte deinem MinGW Ordner entsprechen, also die Dateien aus "bin" in den "bin" Ordner, die Dateien aus "lib" in den "lib" Ordner und so weiter...

    Dann in MSYS in den Ordner wechseln, wo deine x264.exe ist und:
    gdb --args x264.exe --help

    Mit "run" startest du das Programm, mit "bt" kannst du nach einem möglichen Crash den Backtrace erzeugen und mit "quit" verlässt man den gdb...

  • Magst du mal kurz schauen ob die bei dir auch abstürzt?
    http://depositfiles.com/files/8334684

    Ja, stürzt ab. Diese info stammt vom GDB:

    Zitat

    Program received signal SIGSEGV, Segmentation fault.
    0x77bd8528 in strchr () from C:\WINDOWS\syswow64\msvcrt.dll

    Scheint in der Mircosoft C Laufzeit-Bibliothek zu crashen :hm:

    Der Backtrace ist leider nicht aussagekräftig, da du kein Debug Build erstellt hattest.
    Um ein Debug Build zu erstellen musst du "--enable-debug" an den Configure-Script übergeben.

    Sicher dass dein MinGW/GCC sauber aufgesetzt ist und es da nirgendwo Konflikte gibt ???

  • Ok, hier nochmal.

    ./configure --enable-debug
    make

    x264-debug
    http://depositfiles.com/files/8334924

    greets
    LTJ

    EDIT//
    Ich hab noch eine alte MinGW 3.4.5 drauf, aber die ist portable von meinem USB-Stick und in nem anderen Ordner und den Pfad dahin hab ich aus der Windows PATH-Variable gelöscht, ansonsten ist MinGW&Co aus dem von dir oben verlinkten Installer-Paket installiert.

    2 Mal editiert, zuletzt von LessThanJake (30. September 2008 um 02:25)

  • Das sagt mir leider auch nicht viel mehr, außer dass der Aufruf, der crasht, aus der x264_param_parse() Methode kommt, der wiederrum direkt aus der main() Methode kommt. Da ein Bug in x264 an dieser Stelle auszuschließen ist und dein Compiler Aufruf soweit auch korrekt ist, würde ich vorschlagen, du machst nochmal ALLES platt, was irgendwie mit MinGW, GCC, GIT, pthreads oder yasm zu tun hat. Dann nochmal sauber aufsetzten. Weisst ja jetzt wie's geht..

    BTW: Wie hast du GIT in deinen Path eingefügt ???

  • Alles klar, aber erst wieder "heute" Abend, muß früh raus.
    Danke soweit :).

    Zitat

    BTW: Wie hast du GIT in deinen Path eingefügt ???


    Hab ich doch garnicht.
    Wenn ich GIT starte hab ich ein eigenes Bash-Fenster, wäre aber schön wenn das dann auch direkt im msys-bash laufen würde.

    greets
    LTJ

  • Hab ich doch garnicht.
    Wenn ich GIT starte hab ich ein eigenes Bash-Fenster, wäre aber schön wenn das dann auch direkt im msys-bash laufen würde.

    Gut gut. Hatte mir damit nämlich mal meine MinGW Umgebung zerschossen :ani_lol:

    Eine sichere Methode scheint mir folgender Befehl, ausgeführt in der MSYS Shell, zu sein:
    export PATH=$PATH:/c/dev/git/bin

    Der Pfad zu "git/bin" ist gegebenenfalls anzupassen...

  • Irgendwie wollen die builds trotz mehrfacher Neuinstallation nicht laufen.

    Mir ist aufgefallen das msys nach der Postinstallprozedur erzählt ich hätte keine make.exe, aber das kann ja schlecht sein, sonst würde der Kompiliervorgang ja garnicht starten.
    Muß ich evtl. eine mingw-32-make zu make umbenennen und verschieben?

    Oder liegts vielleicht doch an der Compiler-Version?
    Folgendes hab ich installiert:
    yasm -> 0.7.1.2093
    gcc -> 4.3.2

    greets
    LTJ

    EDIT//
    Es lag tatsächlich an der Compilerversion. 4.3.2-tdm geht nicht! Mit der älteren 4.2.4-tdm hat es geklappt, da verschwinden dann auch fast alle warnings.
    Allerdings sehe ich außer der Angabe "x264 Core 64" keine weiteren Infos über eine Revision.
    Wo ist die hin?

    3 Mal editiert, zuletzt von LessThanJake (30. September 2008 um 23:11)

  • Ich benutze GCC 4.3.2 von TDM und habe kein solches Problem. Die yasm version ist identisch. Sehr strange...

    Die Revisionsnummer befindet sich in "config.h" wie folgt:

    Code
    #define X264_VERSION " r995M 2324c70"
    #define X264_POINTVER "0.64.995M 2324c70"

    Du musst darauf achten, dass GIT verfügbar ist, wenn du "./configure" ausführst!
    export PATH=$PATH:/c/dev/git/bin

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!