Giter VIP home page Giter VIP logo

Comments (9)

nextghost avatar nextghost commented on September 17, 2024

FFmpeg documentation says that avformat_alloc_output_context2() should be available since version 0.7. If the libavformat devel package in Ubuntu doesn't provide that symbol, the package is broken and you should report that to your distro maintainers. In the mean time, you can link Dvbcut against legacy FFmpeg which is included with the sources. You'll either have to uninstall libavcodec-dev or comment out the pkg-config check for libavcodec in src/src.pro on line 12 and re-run qmake.

from dvbcut-qt4.

michaelkanis avatar michaelkanis commented on September 17, 2024

Now I get:

../ffmpeg/lib/libavcodec.a(h263.o): In function h263_decode_picture_header': h263.c:(.text+0x18c95): undefined reference toff_gcd'
../ffmpeg/lib/libavcodec.a(mpegvideo.o): In function MPV_encode_init': mpegvideo.c:(.text+0x4ff0): undefined reference toff_gcd'
collect2: ld returned 1 exit status

Seems the included ffmpeg doesn't build?

from dvbcut-qt4.

nextghost avatar nextghost commented on September 17, 2024

ff_gcd() should be part of ffmpeg/lib/libavutil.a (implemented in ffmpeg.src/libavutil/mathematics.c), did this file build correctly? If not, I need the error message from FFmpeg compilation.

from dvbcut-qt4.

michaelkanis avatar michaelkanis commented on September 17, 2024

../ffmpeg/lib/libavcodec.a(h263.o):-1: In function `h263_decode_picture_header':
File not found: ../ffmpeg/lib/libavcodec.a(h263.o)

But libavcodec.a got build in ffmpeg/lib:
$ file ffmpeg/lib/libavcodec.a
ffmpeg/lib/libavcodec.a: current ar archive

And there is also ./ffmpeg.src/libavutil/mathematics.o

$ strings ffmpeg/lib/libavcodec.a | grep ff_gcd
ff_gcd
ff_gcd

Maybe it's something about the relative path?

from dvbcut-qt4.

nextghost avatar nextghost commented on September 17, 2024

I think you should send me a complete build log. I can't figure out what's wrong from so little information.

from dvbcut-qt4.

michaelkanis avatar michaelkanis commented on September 17, 2024

Sorry …

This is the full compile output after I did a fresh git clone: https://gist.github.com/michaelkanis/5952497

And thanks for your help!

from dvbcut-qt4.

nextghost avatar nextghost commented on September 17, 2024

Let me guess, you have a copy of libavutil.so in /usr/lib/x86_64-linux-gnu/? You'll have to edit src/Makefile, find the line which defines the LIBS variable and move the text -L/usr/lib/x86_64-linux-gnu after -lavutil. I can't do this through the project file because I don't have full control over library order. QMake apparently always places the Qt libs directory first. Dvbcut should finally build after this change.

from dvbcut-qt4.

michaelkanis avatar michaelkanis commented on September 17, 2024

Indeed. I found it easier to temporarily rename libavutil.so and libavutil.a in /usr/lib/x86_64-linux-gnu/ and it built successfully. However, neither of this is very convenient when trying to make some changes to the source.

Thanks again for your help though!

from dvbcut-qt4.

nextghost avatar nextghost commented on September 17, 2024

Well, your distro maintainers managed to make this much more painful than it needs to be. First they provide a broken package which you need to work around and then make Qt4 libs install in the same directory as everything else (Gentoo for example has Qt libs in a separate subdirectory) which makes linking Qt programs against internal libs a huge pain in the ass. You should report both as a bug.

from dvbcut-qt4.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.