cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
patocarr
Teacher
Teacher
567 Views
Registered: ‎01-28-2008

Vivado/Petalinux 2021.1 on Fedora 33

Hi folks,

  I have managed to install Vitis (incl. Vivado) and Petalinux 2021.1 on [unsupported] Fedora 33, which RHEL 9 may be based on in some few months. I intend to document the workarounds in this post as I find them.

  The Vitis installation through the web install went quite smoothly, though the tool showed a worrying window just before finishing, but so far without noticeable ill effects.

Screenshot 2021-06-28-10_11_42-Selection_01.png

  The first attempt at the Petalinux install was to install on an NTFS partition, which failed with an error message:

ERROR: Failed to install /mnt/data/Xilinx/Petalinux/./components/yocto/buildtools.

  Changing the installation directory to a non-NTFS partition fixed this problem.

  Then attempting to source the Petalinux tools threw another error message.

[pcarr@pat-laptop Default]$ . /opt/Xilinx/Petalinux/settings.sh 
PetaLinux environment set to '/opt/Xilinx/Petalinux'
WARNING: This is not a supported OS
INFO: Checking free disk space
INFO: Checking installed tools
gcc: /opt/Xilinx/Petalinux/tools/xsct/lib/lnx64.o/Default/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by gcc)
(standard_in) 1: syntax error
environment: line 265: [: : integer expression expected
INFO: Checking installed development libraries
ERROR: You are missing these development libraries required by PetaLinux:

 - zlib
 - ncurses

Please install them with your operating system package manager, and try again

  The zlib-devel and ncurses-devel were already installed, so this was not related to the error message.

  The fix was to replace the libstdc++ library within Petalinux tree with the OS' provided one.

[pcarr@pat-laptop Default]$ cd /opt/Xilinx/Petalinux/tools/xsct/lib/lnx64.o/Default
[pcarr@pat-laptop Default]$ mv libstdc++.so.6 libstdc++.so.6.orig
[pcarr@pat-laptop Default]$ ln -s /usr/lib64/libstdc++.so.6 libstdc++.so

  Leaving the directory looking like:

[pcarr@pat-laptop Default]$ ll
total 1784
-rwxr-xr-x 1 pcarr pcarr   89584 Jun  5 21:11 libgcc_s.so.1
-rwxr-xr-x 1 pcarr pcarr  175896 Jun  5 21:11 libgomp.so.1
lrwxrwxrwx 1 pcarr pcarr      25 Jun 28 16:26 libstdc++.so -> /usr/lib64/libstdc++.so.6
-rwxr-xr-x 1 pcarr pcarr 1557464 Jun  5 21:11 libstdc++.so.6.orig

 

  I have yet to test run Vitis but will continue this thread if I discover anything of interest.

 

Thanks,

-Pat

 

Give kudos if helpful. Accept as solution if it solves your problem.
https://tuxengineering.com/blog

5 Replies
patocarr
Teacher
Teacher
531 Views
Registered: ‎01-28-2008

Folks,

  Continuing with a new workaround, this time Petalinux throws a series of errors, that seem to originate from this message:

 

| /opt/Xilinx/Petalinux/tools/xsct/tps/lnx64/cmake-3.3.2/bin/cmake: error while loading shared libraries: libidn.so.11: cannot open shared object file: No such file or directory
| child process exited abnormally
| Failed to generate cmake files Linux.
| ERROR: [Hsi 55-1545] Problem running tcl command ::sw_rfdc_v10_0::generate : Failed to generate cmake files Linux.

 

  The libidn library that is looking for does not exist as it's too old for this new OS. It expects version 11 and only 12 is available. The workaround is to soft link the new version to the old.

 

[pcarr@pat-laptop ~]$ cd /usr/lib64/
[pcarr@pat-laptop lib64]$ ls -l libidn*
lrwxrwxrwx 1 root root     16 May 13 05:15 libidn2.so -> libidn2.so.0.3.7
lrwxrwxrwx 1 root root     16 May 13 05:15 libidn2.so.0 -> libidn2.so.0.3.7
-rwxr-xr-x 1 root root 131048 May 13 05:15 libidn2.so.0.3.7
lrwxrwxrwx 1 root root     16 Jul 28  2020 libidn.so.12 -> libidn.so.12.6.1
-rwxr-xr-x 1 root root 213104 Jul 28  2020 libidn.so.12.6.1
[pcarr@pat-laptop lib64]$ sudo ln -s libidn.so.12 libidn.so.11

 

 

Thanks,

-Pat

 

Give kudos if helpful. Accept as solution if it solves your problem.
https://tuxengineering.com/blog

0 Kudos
watari
Professor
Professor
519 Views
Registered: ‎06-16-2013

Hi @patocarr 

 

It's interesting for me. And it's good information for community memer.

BTW, I have some question.

 

1)

Which NFS version are you using ?

I guess, if you use NFS v.3, you might be able to install it.

 

2)

Did you try compat-* package file to resolve your issue instead of workaround ?

I guess it seems compat-* package issue...

 

Best regards,

0 Kudos
patocarr
Teacher
Teacher
507 Views
Registered: ‎01-28-2008

Hi @watari 

> 1) Which NFS version are you using ?

Not using NFS; just a local hard drives partitioned as ext4 and NTFS.

2) Did you try compat-* package file to resolve your issue instead of workaround ?

I haven't found a suitable compat-* package for libidn to install in Fedora 33.

 

Thanks,

-Pat

 

 

Give kudos if helpful. Accept as solution if it solves your problem.
https://tuxengineering.com/blog

watari
Professor
Professor
439 Views
Registered: ‎06-16-2013

Hi @patocarr 

 

Thank you for your reply.

 

> The libidn library that is looking for does not exist as it's too old for this new OS. It expects version 11 and only 12 is available. The workaround is to soft link the new version to the old.

 

There is libidn.so.12 in "libidn-1.36" package. But there is libidn.so.11 in "libidn-1.34".

I guess it does not need work around.

So ,would you try to install "libidn-1.34" package ?

 

Hope this helps.

 

Best regards,

patocarr
Teacher
Teacher
421 Views
Registered: ‎01-28-2008

Hi @watari 

  Great point about the libidn1.34 package. Installing it, provides the missing /usr/lib64/libidn.so.11 pointing to the correct library, libidn.so.11.6.18. So the workaround above (soft link) for Petalinux will not be needed.

 

Thanks,

-Pat

 

Give kudos if helpful. Accept as solution if it solves your problem.
https://tuxengineering.com/blog

0 Kudos