UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Adventurer
Adventurer
3,089 Views
Registered: ‎09-27-2011

/lib/ld-linux-armhf.so.3 vs /lib/ld-linux.so.3

Jump to solution

Hello.  I just recently upgraded Vivado and PetaLinux to 2017.1 so they could be on the same version to resolve the missing mtd device problem.  A problem I am running into is that PetaLinux 2017.1 uses the library name /lib/ld-linux-armhf.so.3 according to the new standardization.  The 2017.1 sdk apparently is using the old library pathname of  /lib/ld-linux.so.3 as its little elf self is unable to start start unless a symlink is in place

ln -s /lib/ld-linux-armhf.so.3 /lib/ld-linux.so.3

I found a stackoverflow article telling how to add this link creation to the PetaLinux yocto library definition but it didn't work.  I also tried adding it in the do_install function

         mkdir ${D}/lib
         ln -s /lib/ld-linux-armhf.so.3 ${D}/lib/ld-linux.so.3

but although that gets the lib in the generated rpm, it doesn't transfer all the way into the file system image at

       ./images/linux/rootfs.cpio

So at this point I realize Yocto is over my head and that the SDK 2017.1 should be compatible with the PetaLinux 2017.1 anyway.  I am assuming there is a compile flag I should be able to give gcc which would make it use the correct ld-linux.so.3 library file.  I suppose I could also dynamically generate the library link each time the board boots, but it seems like that shouldn't be needed.  Thanks for looking into this.

 

 

 

0 Kudos
1 Solution

Accepted Solutions
Adventurer
Adventurer
4,872 Views
Registered: ‎09-27-2011

Re: /lib/ld-linux-armhf.so.3 vs /lib/ld-linux.so.3

Jump to solution

Interesting.  So I started a new C++ project in the SDK to try to iron something else out and the executable it generates links to the new library location /lib/ld-linux-armhf.so.3.  I figured this out by trying to run it on the older Linux from PetaLinux 2014 and it produced the same error until I produced the same link in reverse.  So apparently there are settings somewhere that do not get upgraded when you upgrade the software.  I suppose if I have to I can recreate the project and re-add the source files again.

0 Kudos
1 Reply
Adventurer
Adventurer
4,873 Views
Registered: ‎09-27-2011

Re: /lib/ld-linux-armhf.so.3 vs /lib/ld-linux.so.3

Jump to solution

Interesting.  So I started a new C++ project in the SDK to try to iron something else out and the executable it generates links to the new library location /lib/ld-linux-armhf.so.3.  I figured this out by trying to run it on the older Linux from PetaLinux 2014 and it produced the same error until I produced the same link in reverse.  So apparently there are settings somewhere that do not get upgraded when you upgrade the software.  I suppose if I have to I can recreate the project and re-add the source files again.

0 Kudos