[yocto] .rpm packaging weirdness of dynamic libraries

Hans Beckérus hans.beckerus at gmail.com
Thu May 23 11:51:19 PDT 2013


On Thu, May 23, 2013 at 8:31 PM, Burton, Ross <ross.burton at intel.com> wrote:
> On 23 May 2013 18:16, Hans Beckérus <hans.beckerus at gmail.com> wrote:
>> Hmm. I tried the FILES trick, but either I am doing something wrong or
>> FILES does not really affect whats getting into the .rpm? This is what
>> I tried in our recipe
>>
>> FILES_${PN} += " ${exec_prefix}/usr/lib/libelinx.so"
>> FILES_${PN} += " ${exec_prefix}/usr/lib/libepmq.so"
>
> Use ${libdir} instead of exec_prefix/usr/lib, and I guess the default
> FILES_${PN}-dev is taking the files first.  Try setting that to "".
>
Thanks. I will certainly try that.
However, I have completely changed path now ;) I think the root cause
of this entire problem is that the package is constructed wrong. Since
these .so files are modules, we need to tell libtool so it does not
create the regular versioned lib file structure. What we want is a .so
file and no links. Maybe then all of this is a no issue anymore?

elinx_drv_la_LDFLAGS = -module -avoid-version -shared

This might do the trick.

Hans


On Thu, May 23, 2013 at 8:31 PM, Burton, Ross <ross.burton at intel.com> wrote:
> On 23 May 2013 18:16, Hans Beckérus <hans.beckerus at gmail.com> wrote:
>> Hmm. I tried the FILES trick, but either I am doing something wrong or
>> FILES does not really affect whats getting into the .rpm? This is what
>> I tried in our recipe
>>
>> FILES_${PN} += " ${exec_prefix}/usr/lib/libelinx.so"
>> FILES_${PN} += " ${exec_prefix}/usr/lib/libepmq.so"
>
> Use ${libdir} instead of exec_prefix/usr/lib, and I guess the default
> FILES_${PN}-dev is taking the files first.  Try setting that to "".
>
> Ross



More information about the yocto mailing list