[packman] [PM] ffmpeg 0.6.25512svn-2.pm.3.1 (openSUSE 11.3/x86_64)
Cristian Morales Vega
cmorve69 at yahoo.es
Tue Nov 16 14:27:40 CET 2010
2010/11/16 Toni <toni at links2linux.de>:
> Am Dienstag, 16. November 2010 schrieb Manfred Tremmel:
>> Am Dienstag, 16. November 2010 schrieb Carl Eugen Hoyos:
>> > Manfred Tremmel <manfred at ...> writes:
>> > > > Any reason why libopenjpeg is not enabled? It is impossible to
>> > > > decode jpg2k without it.
>> > >
>> > > Compile errors when I've tried last time.
>> >
>> > I believe I remember now what the problem is:
>> > OpenJPEG upstream has two locations for its header file, depending on
>> > which make you use, make or cmake. (I reported this upstream some
>> > time ago, I would welcome if somebody else does it too, what I did
>> > wrong was to request changing the cmake location, it would also be
>> > fine if they just made the two install into the same directory, no
>> > matter which.)
>> >
>> > Unfortunately, Packman and FFmpeg do not agree on which location to
>> > use. My suggestion would be to add a symlink from
>> > /usr/include/openjpeg.h to /usr/include/openjpeg/openjpeg.h to
>> > libopenjpeg-devel-1.3-0.pm.5.1, but
>> > --extra-cflags=-I/usr/include/openjpeg should also work (please
>> > report if not).
>> >
>> > Or do you have another problem? It compiles fine for me.
>>
>> Here's the openjpeg part of config.log on my openSUSE 11.2 x86_64
>>
>> check_func opj_version -lopenjpeg
>> check_ld -lopenjpeg
>> check_cc
>> BEGIN /tmp/ffconf.V6h4hsXr.c
>> 1 extern int opj_version();
>> 2 int main(void){ opj_version(); }
>> END /tmp/ffconf.V6h4hsXr.c
>> gcc -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -
>> funwind-tables -fasynchronous-unwind-tables -fPIC -I/usr/include/gsm -
>> I/usr/include/openjpeg -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -
>> D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -fmessage-length=0 -O2 -
>> Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -
>> fasynchronous-unwind-tables -fPIC -I/usr/include/gsm -
>> I/usr/include/openjpeg -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2
>> -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fPIC -
>> I/usr/include/gsm -I/usr/include/openjpeg -std=c99 -fomit-frame-pointer
>> -fPIC -pthread -I/usr/include/dirac -c -o /tmp/ffconf.bLZOwjuu.o
>> /tmp/ffconf.V6h4hsXr.c
>> gcc -o /tmp/ffconf.1Dz9k32M /tmp/ffconf.bLZOwjuu.o -lopencore-amrwb -
>> lopencore-amrnb -lmp3lame -lgsm -ldirac_encoder -ldirac_decoder -lm -
>> lstdc++ -ldirac_encoder -ldirac_decoder -lm -lstdc++ -lm -pthread -lbz2
>> -lz -lopenjpeg
>> /usr/lib64/gcc/x86_64-suse-linux/4.4/../../../../lib64/libopenjpeg.so:
>> undefined reference to `floor'
>> /usr/lib64/gcc/x86_64-suse-linux/4.4/../../../../lib64/libopenjpeg.so:
>> undefined reference to `ceil'
>> /usr/lib64/gcc/x86_64-suse-linux/4.4/../../../../lib64/libopenjpeg.so:
>> undefined reference to `lrintf'
>> /usr/lib64/gcc/x86_64-suse-linux/4.4/../../../../lib64/libopenjpeg.so:
>> undefined reference to `pow'
>> collect2: ld returned 1 exit status
>> ERROR: libopenjpeg not found
>>
>> Looks to me like a missing "#include <math.h>"
> it is a linker error ==> it misses a library not a header (compile time error)
>
> try to add
> export SUSE_ASNEEDED=0
>
> in the build section as a quick workaround.
And the problem is in the openjpeg package. The library should link to libm.
More information about the Packman
mailing list