2008/4/24 rafael2k <[EMAIL PROTECTED]>:
> hi all,
> I asked in the ffmpeg channel, and definitely /usr/include/ffmpeg is _not_
> correct.
That's not what you've asked.(1)
Users or packagers can use whatever they like in the include path
you could even use /usr/include/ffmpeg-cinelerra if you want and have
it detected by configure and pkg-config
(well the workaround would request to support renaming of the
resulting pkgconfig files to inherit the suffixed SONAME)
like libavcodec-cinelerra.pc (and so on). (same would be needed for
vhook if needed)
see:
[EMAIL PROTECTED] lib64]# readelf -a
/usr/lib64/libavcodec-compat.so.51.45.0 |grep SONAME
0x000000000000000e (SONAME) Library soname:
[libavcodec-compat.so.51]
example of the resulting libavcodec.pc to be tweaked for libavcodec-compat-pc
prefix=/usr
exec_prefix=${prefix}
libdir=/usr/lib64
includedir=-I/usr/include/ffmpeg #Would need to inherit suffix for
parallele installation in /usr : ffmpeg-compat
Name: libavcodec #Would need to inherit suffix for
parallele installation in /usr : libavcodec-compat
Description: FFmpeg codec library
Version: 51.45.0
Requires: libavutil = 49.5.0 #Would need to inherit suffix for
parallele installation in /usr : libavutil-compat
Conflicts:
Libs: -L${libdir} -lavcodec-compat #the right
non-weak-symbol is already present
Cflags: -I${includedir}
In other words - you can see everything that hardcode path in
libraries detection as a missunderstanding of what pkg-config is.
(1)
* rafael2k ([EMAIL PROTECTED]) a rejoint #ffmpeg
<rafael2k> hi all, what is the recommended place to put the include
files: /usr/include/ffmpeg/lib* or /usr/include/lib*
<rafael2k> for package creation?
...
<thresh> /usr/include/
...
<rafael2k> thanks
* rafael2k est parti ("Read error: 1.732050808 (Excessive square root of 3)")
...
<kwizart> thresh, why did you tell that !!!!
<thresh> ?
<kwizart> we (at livna) use /usr/include/ffmpeg for a while to avoid
miss detection avcodec.h in the standart path
<kwizart> /usr/include
<thresh> so?
<kwizart> v'e expressed my thought here:
https://init.linpro.no/pipermail/skolelinux.no/cinelerra/2008-April/013967.html
<thresh> would it be neeeded for a new package
<thresh> This is definitly wrong. Project that links to libavcodec do not need
<thresh> to add all theses non-weak-symbols at linking time. Most of them must
<thresh> be moved to Libs.private.
<thresh> so i did in my build :P
<thresh> hmm, maybe i should send a patch
<kwizart> well, this will prevent our ffmpeg maintainer to do the work twice
<thresh> i'd be pleased if you try it before i send it
<bcoudurier> hi kwizart, do you plan to integrate MXF/DNXHD ?
<kwizart> i can have a look - but i don't worry
<bcoudurier> I would be surely happy to help if needed
<kwizart> what do you mean MXFetc...?
<bcoudurier> those are major features for editing
<thresh> here it goes
<thresh> http://pastebin.ca/995857
...
<thresh> but: it kinda works here for my ffmpeg builds
<thresh> for sisyphus
<kwizart> Libs: -L${libdir} -lavcodec
<kwizart> Libs.private: -lz -pthread -lm -la52 -lfaac -lfaad -lgsm
-lmp3lame -lm -ltheora -logg -lvorbisenc -lvorbis -logg -lx264 -lm
-lxvidcore -ldl -ldl
<thresh> yeah, looks ok
<thresh> ah, i messed up avfilter pkg-config generation
<kwizart> don't have enabled swscale nor avfilter thougjt... seems ok...
<thresh> i'll correct the patch in a couple of days and send to review
in ffmpeg-devel
...
> bye,
> rafael diniz
>
> Em Wednesday 23 April 2008, KH KH escreveu:
>
>
> > 2008/4/23 rafael2k <[EMAIL PROTECTED]>:
> > > hi all,
> > >
> > > yes, this package is not correct.
> > > the right location is
> > > /usr/include/libavcodec
> > > /usr/include/libswscale
> > > ...
> > >
> > > I suggest you to contact your package mantainer to comunicate the wrong
> > > path of the includes, or make the package by yourself.
> >
> > Well actually, he is right. as he probably set
> > --incdir=%{_includedir}/ffmpeg \ at configure step.
> > this lead the included pkgconfig files to have
> > includedir=/usr/include/ffmpeg And that's the problem actually: If your
> > used <avcodec.h> in your project, then you will want to use
> > <libavcodec/avcodec.h> instead and -I/usr/include/ffmpeg will be set
> > automatically as a cflags for ffmpeg by pkg-config.
> >
> > Now if you want to keep compatibility 'manual" detection, that's
> > another problem:
> > on system where there is two ffmpeg instances (with differents
> > SONAME), then you may have /usr/include/avcodec.h and
> > /usr/include/libavcodec/avcodec.h (or /usr/include/ffmpeg/avcodec.h )
> > The first one will alsways been in the include path (as /usr/include
> > is the default).
> > This can lead to false positive detection at configure step and bad
> > compile errors.
> > Thus this lead to have headers in /usr/include/(avcodec.h) to be avoided.
> > The only good workaround would be to always trust pkg-config detection
> > first (where the avcodec.m4 from libquicktime exactly do the opposite).
> > And the definitly nicer fix from ffmpeg side would be to default the
> > headers installation to /usr/include/ffmpeg
> >
> > Now the problem why i hate that is : from a packager side, this will
> > lead to have lot of packages failing at rebuild. That's why i would
> > call that "api breakage".
> > Thus from Fedora (livna) side - we may fix their pkg-config files to
> > add the correct pathes (/usr/include/ffmpeg/libavcodec etc...)
> >
> > The second bad error from the ffmpeg side is (taken from libavcodec.pc)
> > Libs: -L${libdir} -lavformat -lz -pthread -lm -la52 -lfaac -lfaad
> > -lgsm -lmp3lame -lm -ltheora -logg -lvorbisenc -lvorbis -logg -lx264
> > -lm -lxvidcore -ldl -ldl
> > This is definitly wrong. Project that links to libavcodec do not need
> > to add all theses non-weak-symbols at linking time. Most of them must
> > be moved to Libs.private. Project that use libavcodec doens't need to
> > link to these symbols directly. (even if they are aimed to support all
> > of them).
> >
> > Nicolas (kwizart)
> >
> > > bye,
> > > rafael diniz
> > >
> > > Em Wednesday 23 April 2008, toby escreveu:
> > > > Now, what's the default location of avcodec.h and swscale.h after
> > > >
> > > > installing
> > > > ffmpeg it from source ? Are we both dealing with ffmpeg code newer
> > > > than 2008-04-14 ?
> > > >
> > > > I didn't compile ffmpeg myself, as I'm using Christian Marrilats
> > > > Debian packages from
> > > > debian-multimedia.org. Therefore, I'm a little bit confused about the
> > > > include file locations.
> > > > /usr/include/ffmpeg/libavcodec/avcodec.h
> > > > /usr/include/ffmpeg/libswscale/swscale.h
> > > > /usr/include/ffmpeg/libavformat/avformat.h
> > > > ...
> > > >
> > > > Is this new hierachical organization Christians own creation ? Is he
> > > > following some Debian specific
> > > > guidelines, or is this a general change of the ffmpeg defaults ?
> > > >
> > > > Maybe it's a good idea - for the moment - to adapt the configure
> > > > system to include these optional subfolders.
> > > >
> > > > Toby
> > > >
> > > > > -----Ursprüngliche Nachricht-----
> > > > > Von: [email protected]
> > > > > Gesendet: 22.04.08 18:06:41
> > > > > An: [email protected]
> > > > > Betreff: Re: [CinCV] include order in ffmpeg.h
> > > > >
> > > > >
> > > > > afaik,
> > > > > cinelerra does compile OK with latest ffmpeg.
> > > > > When I applied the latest external ffmpeg api fix, it compiled fine
> > > >
> > > > (ffmpeg
> > > >
> > > > > installed from source).
> > > > >
> > > > > bye,
> > > > > rafael diniz
> > > > >
> > > > > Em Monday 21 April 2008, Herman Robak escreveu:
> > > > > > On Mon, 21 Apr 2008 13:49:03 +0200, toby <[EMAIL PROTECTED]>
> wrote:
> > > > > > > Hi,
> > > > > > >
> > > > > > > today I've tried to compile the latest r1056 on debian unstable
> > > > > > > with external ffmpeg, libavcodeccvs51 version 3:20080414.
> > > > > > > There have been two main issues, that needed some fixing.
> > > > > >
> > > > > > ...snip...
> > > > > >
> > > > > > > Is it required to fix SVN code, or is cinerella not intended to
> > > > > > > work with latest ffmpeg ?
> > > > > >
> > > > > > Unless we explicitly state otherwise, users will assume that it
> > > > > > does. So I'd say this needs fixing. Committers?
>
>
> --
>
> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
> Ciência da Computação @ Unicamp
> Rádio Muda, radiolivre.org, TV Piolho, tvlivre.org, www.midiaindependente.org
> Chave PGP: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x2FF86098
>
> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
>
>
_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra