[yocto] prelink & mklibs problem

Mark Hatle mark.hatle at windriver.com
Tue Dec 9 19:01:02 PST 2014


On 12/9/14, 8:41 PM, Qiang Yu wrote:
> I have submitted a bug here:
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=7056

(Responded in the bug as well...)  I have a test version of the cross prelink 
with the ARM HF patch available, as commit:

2cde4ff118b5244f5577d9bc585c1ee521740af0

To enable it, use the following in your local.conf:

SRCREV_pn-prelink = "2cde4ff118b5244f5577d9bc585c1ee521740af0"

If this works for you, I'll finish the patch and submit the changes.

--Mark

> Regards,
> Qiang
>
> On Tue, Dec 9, 2014 at 11:51 PM, Mark Hatle <mark.hatle at windriver.com
> <mailto:mark.hatle at windriver.com>> wrote:
>
>     On 12/8/14, 3:55 AM, Jegan Chandru wrote:
>
>         I recommend you to file a bug here https://bugzilla.yoctoproject.__org/
>         <https://bugzilla.yoctoproject.org/> if not
>         done already. You may get a proper answer on armhf support there. From
>         what I
>         see, (someone please correct me if I am wrong), there is no prelink
>         dynamic link
>         armhf patch. You can also create and submit the patch for review. AFAIK,
>         you are
>         gonna need to something like below,
>
>         .dynamic_linker = "/lib/ld-linux-armhf.so.3" in arch-arm.c.
>
>         This is not tested though. Please do a test yourselves.
>
>
>     See: http://marc.info/?l=fedora-__arm&m=135417053128837&w=2
>     <http://marc.info/?l=fedora-arm&m=135417053128837&w=2>
>
>     Nobody had requested prelink support for armhf up to this point.
>
>     Open an enhancement / bug and assign it to me.  I'll do what I can to
>     integrate the patch officially.
>
>     I had been waiting for the prelink upstream to merge this, but they never
>     bothered to, so I'll have to make it a Yocto Project 'cross-prelink'
>     specific path.
>
>     --Mark
>
>         -JC
>
>         On Mon, Dec 8, 2014 at 1:52 PM, Qiang Yu <yuq825 at gmail.com
>         <mailto:yuq825 at gmail.com>
>         <mailto:yuq825 at gmail.com <mailto:yuq825 at gmail.com>>> wrote:
>
>              Thanks for your reply. I almost give up.
>
>              You mean that current yocto build doesn't support hard float ABI
>         prelink,
>              and the prelink source code needs to
>              be modified to use ld-linux-armhf.so.3?
>
>              So this problem affect all armhf build of yocto, in other words prelink
>              doesn't work for yocto armhf at all now?
>
>              Regards,
>              Qiang
>
>              On Mon, Dec 8, 2014 at 3:28 PM, Jegan Chandru <pcjegan at gmail.com
>         <mailto:pcjegan at gmail.com>
>              <mailto:pcjegan at gmail.com <mailto:pcjegan at gmail.com>>> wrote:
>
>                  Hi,
>
>                  I think it has to do with the ld-linux-armhf.so.3. May be you
>         should
>                  tell prelink that you have hard float ARM ABI to prelink for, than
>                  ld-linux.so.3 . It means you need to add ld-linux-armhf.so.3 as a
>                  dynamic linker.
>                  You should patch the prelink source to get this done.
>
>                  HTH.
>
>                  -JC
>
>
>
>                  On Fri, Dec 5, 2014 at 7:41 AM, Qiang Yu <yuq825 at gmail.com
>         <mailto:yuq825 at gmail.com>
>                  <mailto:yuq825 at gmail.com <mailto:yuq825 at gmail.com>>> wrote:
>
>                      Hi all,
>
>                      I'm building a image with local.conf:
>                      USER_CLASSES ?= "buildstats image-mklibs image-prelink"
>
>                      but I think prelink does nothing on my image, because the
>         MD5SUM is
>                      the same before and after
>                      the prelink stage. The mklibs stage is also strange not print
>                      anything. How to make prelink and
>                      mklibs really work?
>
>                      Here is the log of log.do_rootfs:
>
>                      NOTE: ###### Generate images #######
>                      NOTE: Executing mklibs_optimize_image ...
>                      DEBUG: Executing shell function mklibs_optimize_image
>                      DEBUG: Shell function mklibs_optimize_image finished
>                      NOTE: Executing prelink_image ...
>                      DEBUG: Executing shell function prelink_image
>                      Size before prelinking 49304.
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /sbin/fstab-decode: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /sbin/bootlogd: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /sbin/killall5: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /sbin/init.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /sbin/halt.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /sbin/shutdown.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /sbin/runlevel.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /usr/sbin/dropbearmulti: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /bin/mountpoint.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /bin/busybox.suid: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /bin/busybox.nosuid: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /usr/bin/utmpdump.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /usr/bin/mesg.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /usr/bin/last.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /usr/bin/opkg-cl: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /usr/bin/bmw: Using /lib/ld-linux-armhf.so.3, not
>         /lib/ld-linux.so.3
>                      as dynamic linker
>
>         /opt/yocto/rootfs/tmp/__sysroots/x86_64-linux/usr/__sbin/prelink:
>                      /usr/bin/wall.sysvinit: Using /lib/ld-linux-armhf.so.3, not
>                      /lib/ld-linux.so.3 as dynamic linker
>                      Size after prelinking 49304.
>                      DEBUG: Shell function prelink_image finished
>
>                      Regards,
>                      Qiang
>
>
>                      --
>                      _________________________________________________
>                      yocto mailing list
>         yocto at yoctoproject.org <mailto:yocto at yoctoproject.org>
>         <mailto:yocto at yoctoproject.org <mailto:yocto at yoctoproject.org>__>
>         https://lists.yoctoproject.__org/listinfo/yocto
>         <https://lists.yoctoproject.org/listinfo/yocto>
>
>
>
>
>                  --
>                  JCP
>
>
>
>
>
>         --
>         JCP
>
>
>
>     --
>     _________________________________________________
>     yocto mailing list
>     yocto at yoctoproject.org <mailto:yocto at yoctoproject.org>
>     https://lists.yoctoproject.__org/listinfo/yocto
>     <https://lists.yoctoproject.org/listinfo/yocto>
>
>




More information about the yocto mailing list