Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 08 Aug 2008 16:59:33 +0300
From:      Andriy Gapon <avg@icyb.net.ua>
To:        Henry Hu <henry.hu.sh@gmail.com>
Cc:        freebsd-multimedia@freebsd.org
Subject:   Re: transcode: 1.0.5_3 => 1.0.6_1 fails at configure(Libs.private)
Message-ID:  <489C5145.6030003@icyb.net.ua>
In-Reply-To: <53a1e0710808080646y22b93d4eu12cdf4b4eeea619e@mail.gmail.com>
References:  <53a1e0710808080529g1d63e79ej4130f6104914f9f0@mail.gmail.com>	 <489C402B.3000909@icyb.net.ua> <53a1e0710808080646y22b93d4eu12cdf4b4eeea619e@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
on 08/08/2008 16:46 Henry Hu said the following:
> 
> You see libthr.so besides other libraries, which provides pthread_* functions.
> In fact, I've written a small program just containing a call to
> avcodec_thread_init, and compiled it successfully without -pthread,
> just -lavcodec.
> So the problem is that your libavcodec does not depends on libthr.

What is your uname?
On my system (6.3/amd64) none of the port-installed shared libraries
have libthr (or any other thread library) recorded in their dependencies
(as reported by ldd).


> I've tried static linking and it needs -pthread. Libs.private is
> outputed when adding -static to `pkg-config --libs libavcodec`
> 
> 
> 2008/8/8 Andriy Gapon <avg@icyb.net.ua>
>> on 08/08/2008 15:29 Henry Hu said the following:
>>> In my config.log, I found that there is -pthread in the arguments.
>>> It comes from $LIBAVCODEC_EXTRA_LIBS, which comes from `pkg-config
>>> --libs libavcodec`
>>>
>>> $ pkg-config --libs libavcodec
>>> -pthread -L/usr/local/lib -lavcodec -lz -la52 -lfaac -lfaad -lmp3lame
>>> -lx264 -lxvidcore -ltheora -lvorbisenc -lavutil -lvorbis -lm -logg
>>>
>>> So it is present when libavcodec(ffmpeg) is installed.
>>> So why is it missing in your libavcodec's pkgconfig file?
>> Hmm, your analysis is correct but I am not quite sure what is wrong in
>> my env.
>>
>> What I have here is:
>> $ pkg-config --libs libavcodec
>> -L/usr/local/lib -lavcodec
>>
>> $ pkg_info -W /usr/local/libdata/pkgconfig/libavcodec.pc
>> /usr/local/libdata/pkgconfig/libavcodec.pc was installed by package
>> ffmpeg-2008.07.27_2
>>
>> $ fgrep -A1 libavcodec.pc /var/db/pkg/ffmpeg-2008.07.27_2/+CONTENTS
>> libdata/pkgconfig/libavcodec.pc
>> @comment MD5:2d54dcacfc8826101f1ba6163da27797
>>
>> $ md5 /usr/local/libdata/pkgconfig/libavcodec.pc
>> MD5 (/usr/local/libdata/pkgconfig/libavcodec.pc) =
>> 2d54dcacfc8826101f1ba6163da27797
>>
>> $ cat /usr/local/libdata/pkgconfig/libavcodec.pc
>> prefix=/usr/local
>> exec_prefix=${prefix}
>> libdir=${prefix}/lib
>> includedir=${prefix}/include
>>
>> Name: libavcodec
>> Description: FFmpeg codec library
>> Version: 51.61.0
>> Requires:
>> Requires.private: theora vorbisenc libavutil = 49.7.0
>> Conflicts:
>> Libs: -L${libdir} -lavcodec
>> Libs.private: -pthread -lz -lbz2 -lm -la52 -lfaad -ltheora -logg
>> -lvorbisenc -lvorbis -logg -lx264 -lm
>> Cflags: -I${includedir}
>>
>>
>> Not sure about Libs vs Libs.private in the .pc file.
>> Is this ffmpeg issue or transcode issue or pkg-config issue?
>> Perhaps -pthread should be listed in Libs?
>>
>> --
>> Andriy Gapon


-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?489C5145.6030003>