Hi Chen,

I'm a little confused by your message.

You've replied to my email to the Yocto mailing list, regarding a problem I'm 
having with Yocto, by suggesting I email this list if I have a problem with 
Yocto.

Unless I'm missing something, that doesn't make a lot of sense. Can you please 
clarify?

Thanks

John

(PS - changed my subscription email address as my company's Outlook forces a 
load of random nonsense in the sig!).

> On 28 June 2019 at 10:47 ChenQi <qi.c...@windriver.com> wrote: 
>  
> 
> Hi John, 
>  
>  When you have problems regarding yocto, please send email to this mailing 
> list. 
>  
>  Regards, 
>  Chen Qi 
>  
>  On 06/28/2019 12:53 AM, John McCabe wrote: 
> > Hi, 
> >  
> >  (Sorry for the long post, but....) 
> >  
> >  I'm new to Yocto etc and I'm struggling with configuring a recipe to 
> > install some library files that I've built. The libraries in question are 
> > part of OpenDDS, which I've cross-compiled for a Zynq-7000 target. At this 
> > point I don't want to include the build of the libraries in the Yocto 
> > (actually PetaLinux) configuration as it takes hours to build, so I just 
> > want to add the shared libraries that are needed into the image. However I 
> > haven't managed to get this to work in hours, if not days, of trying. 
> > Despite multiple attempts at an opendds.bb file, I continue to get issues 
> > with: 
> >  
> >  === 
> >  Exception: OSError: [Errno 40] too much recursions while resolving 
> > '<project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds/usr/lib/libTAO_PI_Server.so.2.2a_p15';
> >  loop in 
> > '<project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds/usr/lib/libTAO_PI_Server.so.2.2a_p15'
> >  
> >  === 
> >  
> >  Essentially there are a set of binaries and a set of shared libraries that 
> > I want to go into the image. If you look at the current version of the 
> > opendds.bb file I'm using, below, you should see a list of the files in 
> > question. 
> >  
> >  === 
> >  # 
> >  # This file is the OpenDDS libraries recipe. 
> >  # 
> >  
> >  SUMMARY = "OpenDDS Libraries" 
> >  SECTION = "PETALINUX/apps" 
> >  LICENSE = "MIT" 
> >  LIC_FILES_CHKSUM = 
> > ["file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"](file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302)
> >  
> >  
> >  SRC_URI = " [file://DCPSInfoRepo]() \ 
> >  [file://tao_cosnaming]() \ 
> >  [file://tao_imr]() \ 
> >  [file://tao_imr_activator]() \ 
> >  [file://tao_imr_locator]() \ 
> >  [file://tao_nsadd]() \ 
> >  [file://tao_nsdel]() \ 
> >  [file://tao_nslist]() \ 
> >  [file://libACE.so.6.2a_p15]() \ 
> >  [file://libACEXML.so.6.2a_p15]() \ 
> >  [file://libACEXML_Parser.so.6.2a_p15]() \ 
> >  [file://libOpenDDS_Dcps.so.3.13.2]() \ 
> >  [file://libOpenDDS_FACE.so.3.13.2]() \ 
> >  [file://libOpenDDS_Federator.so.3.13.2]() \ 
> >  [file://libOpenDDS_InfoRepoDiscovery.so.3.13.2]() \ 
> >  [file://libOpenDDS_InfoRepoLib.so.3.13.2]() \ 
> >  [file://libOpenDDS_InfoRepoServ.so.3.13.2]() \ 
> >  [file://libOpenDDS_Model.so.3.13.2]() \ 
> >  [file://libOpenDDS_Multicast.so.3.13.2]() \ 
> >  [file://libOpenDDS_Rtps.so.3.13.2]() \ 
> >  [file://libOpenDDS_Rtps_Udp.so.3.13.2]() \ 
> >  [file://libOpenDDS_Shmem.so.3.13.2]() \ 
> >  [file://libOpenDDS_Tcp.so.3.13.2]() \ 
> >  [file://libOpenDDS_Udp.so.3.13.2]() \ 
> >  [file://libOpenDDS_monitor.so.3.13.2]() \ 
> >  [file://libTAO.so.2.2a_p15]() \ 
> >  [file://libTAO_AnyTypeCode.so.2.2a_p15]() \ 
> >  [file://libTAO_Async_IORTable.so.2.2a_p15]() \ 
> >  [file://libTAO_Async_ImR_Client_IDL.so.2.2a_p15]() \ 
> >  [file://libTAO_BiDirGIOP.so.2.2a_p15]() \ 
> >  [file://libTAO_CSD_Framework.so.2.2a_p15]() \ 
> >  [file://libTAO_CSD_ThreadPool.so.2.2a_p15]() \ 
> >  [file://libTAO_CodecFactory.so.2.2a_p15]() \ 
> >  [file://libTAO_Codeset.so.2.2a_p15]() \ 
> >  [file://libTAO_CosNaming.so.2.2a_p15]() \ 
> >  [file://libTAO_CosNaming_Serv.so.2.2a_p15]() \ 
> >  [file://libTAO_CosNaming_Skel.so.2.2a_p15]() \ 
> >  [file://libTAO_DynamicInterface.so.2.2a_p15]() \ 
> >  [file://libTAO_FTORB_Utils.so.2.2a_p15]() \ 
> >  [file://libTAO_FT_ClientORB.so.2.2a_p15]() \ 
> >  [file://libTAO_FT_ServerORB.so.2.2a_p15]() \ 
> >  [file://libTAO_IDL_FE.so.2.2a_p15]() \ 
> >  [file://libTAO_IORManip.so.2.2a_p15]() \ 
> >  [file://libTAO_IORTable.so.2.2a_p15]() \ 
> >  [file://libTAO_ImR_Activator.so.2.2a_p15]() \ 
> >  [file://libTAO_ImR_Activator_IDL.so.2.2a_p15]() \ 
> >  [file://libTAO_ImR_Client.so.2.2a_p15]() \ 
> >  [file://libTAO_ImR_Locator.so.2.2a_p15]() \ 
> >  [file://libTAO_ImR_Locator_IDL.so.2.2a_p15]() \ 
> >  [file://libTAO_Messaging.so.2.2a_p15]() \ 
> >  [file://libTAO_PI.so.2.2a_p15]() \ 
> >  [file://libTAO_PI_Server.so.2.2a_p15]() \ 
> >  [file://libTAO_PortableGroup.so.2.2a_p15]() \ 
> >  [file://libTAO_PortableServer.so.2.2a_p15]() \ 
> >  [file://libTAO_Strategies.so.2.2a_p15]() \ 
> >  [file://libTAO_Svc_Utils.so.2.2a_p15]() \ 
> >  [file://libTAO_Valuetype.so.2.2a_p15]() \ 
> >  " 
> >  
> >  S = "${WORKDIR}" 
> >  
> >  do_install() { 
> >  install -d ${D}${bindir} 
> >  install -d ${D}${libdir} 
> >  install -m 0755 DCPSInfoRepo ${D}${bindir} 
> >  install -m 0755 tao_cosnaming ${D}${bindir} 
> >  install -m 0755 tao_imr ${D}${bindir} 
> >  install -m 0755 tao_imr_activator ${D}${bindir} 
> >  install -m 0755 tao_imr_locator ${D}${bindir} 
> >  install -m 0755 tao_nsadd ${D}${bindir} 
> >  install -m 0755 tao_nsdel ${D}${bindir} 
> >  install -m 0755 tao_nslist ${D}${bindir} 
> >  oe_soinstall libACE.so.6.2a_p15 ${D}${libdir} 
> >  oe_soinstall libACEXML.so.6.2a_p15 ${D}${libdir} 
> >  oe_soinstall libACEXML_Parser.so.6.2a_p15 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Dcps.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_FACE.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Federator.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_InfoRepoDiscovery.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_InfoRepoLib.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_InfoRepoServ.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Model.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Multicast.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Rtps.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Rtps_Udp.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Shmem.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Tcp.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_Udp.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libOpenDDS_monitor.so.3.13.2 ${D}${libdir} 
> >  oe_soinstall libTAO.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_AnyTypeCode.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_Async_IORTable.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_Async_ImR_Client_IDL.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_BiDirGIOP.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_CSD_Framework.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_CSD_ThreadPool.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_CodecFactory.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_Codeset.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_CosNaming.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_CosNaming_Serv.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_CosNaming_Skel.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_DynamicInterface.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_FTORB_Utils.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_FT_ClientORB.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_FT_ServerORB.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_IDL_FE.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_IORManip.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_IORTable.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_ImR_Activator.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_ImR_Activator_IDL.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_ImR_Client.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_ImR_Locator.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_ImR_Locator_IDL.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_Messaging.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_PI.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_PI_Server.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_PortableGroup.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_PortableServer.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_Strategies.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_Svc_Utils.so.2.2a_p15 ${D}${libdir} 
> >  oe_soinstall libTAO_Valuetype.so.2.2a_p15 ${D}${libdir} 
> >  } 
> >  
> >  # Don't bother trying to build the debug package, at least for now! 
> >  INHIBIT_PACKAGE_STRIP = "1" 
> >  INHIBIT_SYSROOT_STRIP = "1" 
> >  INHIBIT_PACKAGE_DEBUG_SPLIT = "1" 
> >  
> >  # Inhibit warnings about files being stripped 
> >  INSANE_SKIP_${PN} = "ldflags" 
> >  INSANE_SKIP_${PN} = "already-stripped" 
> >  
> >  # No .h files to be packaged, so only list .so stuff 
> >  FILES_${PN} = "${bindir}/* ${libdir}/*.so.*" 
> >  FILES_${PN}-dev = "${bindir}/* ${libdir}/*.so" 
> >  === 
> >  
> >  The files were all built in another folder but I've copied them into the 
> > project-spec/meta-user/recipes-apps/opendds/files folder so that they can 
> > be picked up ok. I uses the normal install to do the binaries, and 
> > oe_soinstall to work with the versioned shared libraries, as described in 
> > various places. 
> >  
> >  I added a print statement into package.bbclass at line 1233 (see below) to 
> > try to get a bit more information into the log file about the point where 
> > it's breaking). The log then shows this below (I presume that the stderr 
> > output being in the middle of that lot is just some sequencing effect): 
> >  
> >  === 
> >  DEBUG: Executing python function package_fixsymlinks 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_Svc_Utils.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_FT_ClientORB.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_CSD_Framework.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Rtps_Udp.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Rtps.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_Async_ImR_Client_IDL.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_DynamicInterface.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_AnyTypeCode.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Tcp.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_ImR_Activator_IDL.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_InfoRepoDiscovery.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_InfoRepoLib.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libACEXML.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_Valuetype.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_BiDirGIOP.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_Messaging.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_IORManip.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_CosNaming_Serv.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_PortableServer.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_ImR_Activator.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_Async_IORTable.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_IDL_FE.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libACEXML_Parser.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_monitor.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Multicast.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_PI_Server.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_Strategies.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Federator.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Shmem.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Model.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_PI.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_CodecFactory.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_FT_ServerORB.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_ImR_Locator.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libACE.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_CosNaming.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Dcps.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_IORTable.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_CosNaming_Skel.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_ImR_Locator_IDL.so,
> >  pkg: opendds-devERROR: Error executing a python function in 
> > exec_python_func() autogenerated: 
> >  
> >  The stack trace of python calls that resulted in this exception/failure 
> > was: 
> >  File: 'exec_python_func() autogenerated', lineno: 2, function:  
> >  0001: 
> >  *** 0002:package_fixsymlinks(d) 
> >  0003: 
> >  File: 
> > '/opt/pkg/petalinux/components/yocto/source/arm/layers/core/meta/classes/package.bbclass',
> >  lineno: 1236, function: package_fixsymlinks 
> >  1232: for path in pkgfiles[pkg]: 
> >  1233: print('path: %s, pkg: %s' % (path, pkg)) 
> >  1234: rpath = path[len(inst_root):] 
> >  1235: pkg_files[pkg].append(rpath) 
> >  *** 1236: rtarget = cpath.realpath(path, inst_root, True, assume_dir = 
> > True) 
> >  1237: if not cpath.lexists(rtarget): 
> >  1238: 
> > dangling_links[pkg].append(os.path.normpath(rtarget[len(inst_root):])) 
> >  1239: 
> >  1240: newrdepends = {} 
> >  File: 
> > '/opt/pkg/petalinux/components/yocto/source/arm/layers/core/meta/lib/oe/cachedpath.py',
> >  lineno: 229, function: realpath 
> >  0225: # be printed a backtrace with 100s of OSError exceptions 
> >  0226: # else 
> >  0227: raise OSError(errno.ELOOP, 
> >  0228: "too much recursions while resolving '%s'; loop in '%s'" % 
> >  *** 0229: (file, e.strerror)) 
> >  0230: 
> >  0231: raise 
> >  0232: 
> >  0233: return file 
> >  Exception: OSError: [Errno 40] too much recursions while resolving 
> > '<project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds/usr/lib/libTAO_PI_Server.so.2.2a_p15';
> >  loop in 
> > '<project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds/usr/lib/libTAO_PI_Server.so.2.2a_p15'
> >  
> >  
> >  DEBUG: Python function package_fixsymlinks finished 
> >  DEBUG: Python function do_package finished 
> >  ERROR: Function failed: package_fixsymlinks 
> >  
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_InfoRepoServ.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_CSD_ThreadPool.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_FTORB_Utils.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_PortableGroup.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_ImR_Client.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_FACE.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libTAO_Codeset.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/lib/libOpenDDS_Udp.so,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/bin/tao_imr_locator,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/bin/tao_cosnaming,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/bin/tao_nsdel,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/bin/tao_nsadd,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/bin/tao_nslist,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/bin/tao_imr_activator,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/bin/DCPSInfoRepo,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds-dev/usr/bin/tao_imr,
> >  pkg: opendds-dev 
> >  path: 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/packages-split/opendds/usr/lib/libTAO_PI_Server.so.2.2a_p15,
> >  pkg: opendds 
> >  === 
> >  
> >  In addition, I get a batch of the following messages coming out: 
> >  
> >  === 
> >  1: opendds-1.0-r0 do_package - 0s (pid 23258) 
> >  link recursion too deep, not expanding path 
> > '<project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/package/usr/lib/libTAO_Svc_Utils.so.2.2a_p15'.
> >  
> >  link recursion too deep, not expanding path 
> > '<project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/package/usr/lib/libTAO_PI_Server.so.2.2a_p15'.
> >  
> >  link recursion too deep, not expanding path 
> > '<project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi/opendds/1.0-r0/package/usr/lib/libTAO_PI.so.2.2a_p15'.
> >  
> >  === 
> >  
> >  And, when I go into the lib folder and list the contents, I see: 
> >  
> >  === 
> >  : 
> >  lrwxrwxrwx 1 jmccabe jmccabe 28 Jun 27 17:38 libTAO_PI_Server.so -> 
> > libTAO_PI_Server.so.2.2a_p15 
> >  lrwxrwxrwx 1 jmccabe jmccabe 28 Jun 27 17:38 libTAO_PI_Server.so.2.2a_p15 
> > -> libTAO_PI_Server.so.2.2a_p15 
> >  : 
> >  === 
> >  
> >  With (on Ubuntu), all the filenames in red with a grey (or black?) 
> > background, i.e. broken links. 
> >  
> >  I have a couple of questions about all this: 
> >  
> >  1) The oe_soinstall function (see here - 
> > https://git.yoctoproject.org/cgit.cgi/poky/plain/meta/classes/utils.bbclass)
> >  includes a line that installs (using "install") the xxx.so.x.y file, which 
> > causes a copy of the file from ${WORKDIR} to go into the 
> > <project-base>/build/tmp/work/cortexa9hf-neon-xilinx-linux-gnueabi.opendds/1.0-r0/image/usr/lib
> >  directory. It then generates sonamelink and solink from the library 
> > details and creates symbolic links that point back to the copies of the 
> > library files in ${WORKDIR}. In doing that, the copy of the file that was 
> > placed there by the install line is overwritten with the symbolic link; is 
> > that normal? (I presume it must be otherwise no one would be getting 
> > oe_soinstall to work!). 
> >  
> >  2) Is there anything in the shared library filenames' version part that 
> > could be causing something to get confused? I've seen mention of 
> > zzz.so.a.b.c etc where a, b and c are normally numeric, which is different 
> > to the version information in the DDS files, but... 
> >  
> >  3) I can understand why there could be a recursion issue detected, but 
> > it's not met who's putting those weird links into the package/usr/lib 
> > folder. Is there something in the .bb file that I need to change to make 
> > that work properly? 
> >  
> >  4) Can anyone see whether I'm just simply doing something wrong and 
> > clarify what I need to do to put it right? 
> >  
> >  Any help will be very, very gratefully appreciated. As I said, I'm new to 
> > Yocto and have spent hours looking for help/example of the use of 
> > oe_soinstall. Each time round the loop of updating my .bb file and building 
> > it takes quite a long time so... 
> >  
> >  Many thanks, 
> >  John 
> > 
> > John McCabe​
-- 
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to