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: 
Scholar watari
Scholar
1,220 Views
Registered: ‎06-16-2013

Petalinux 2017.4 Installation failed in Docker

Jump to solution

Hi all

 

I'd like to prepare build-tool-chain for petalinux project via GitHub, Jenkins and Docker.

 

I already confirmed PetaLinux Install Guide and installed all requirement files in docker image.

However, I'm facing following error (*1) even if I already installed netstat, gpg, xvfb-run and makeinfo. (*2)

 

I'd like to know how does petalinux-installer make sure an existence of all required package files.

Or, how do I resolve like this issue ?

 

*1)

<snip>

Do you accept Xilinx End User License Agreement? [y/N] > y
Do you accept Webtalk Terms and Conditions? [y/N] > y
Do you accept Third Party End User License Agreement? [y/N] > y
INFO: Checking installation environment requirements...
INFO: Checking free disk space
INFO: Checking installed tools
ERROR: You are missing the following system tools required by PetaLinux:

 

 - netstat

 - gpg
 - xvfb-run
 - makeinfo
Please check PetaLinux installation guide - required tools and libraries pacakge section for detailed information

INFO: Checking installed development libraries
Please install them with your operating system package manager, and try again
WARNING: Please install required packages.

Please refer to the PetaLinux Tools Installation Guide.

Check the troubleshooting guide at the end of that manual, and if you are
unable to resolve the issue please contact customer support with file:
   /opt/petalinux_installation_log

 

*2)

for example, I can find the following commands.

 

bash-4.2$ ls -lA /bin/netstat    
-rwxr-xr-x 1 root root 154968 Jun 10  2014 /bin/netstat

bash-4.2$ rpm -qa | grep gnupg
gnupg2-2.0.22-4.el7.x86_64

 

 

Best regards,

0 Kudos
1 Solution

Accepted Solutions
Scholar watari
Scholar
1,392 Views
Registered: ‎06-16-2013

Re: Petalinux 2017.4 Installation failed in Docker

Jump to solution

I found the solution to resolve like this issue.

 

"petalinux-installer" uses to make sure an existence of required files by "which" command.

So, especially, user has to install "which" command by yum or apt in docker image.

 

It is an important information.

 

Best regards,

 

0 Kudos
7 Replies
Scholar watari
Scholar
1,393 Views
Registered: ‎06-16-2013

Re: Petalinux 2017.4 Installation failed in Docker

Jump to solution

I found the solution to resolve like this issue.

 

"petalinux-installer" uses to make sure an existence of required files by "which" command.

So, especially, user has to install "which" command by yum or apt in docker image.

 

It is an important information.

 

Best regards,

 

0 Kudos
Explorer
Explorer
915 Views
Registered: ‎05-14-2015

Re: Petalinux 2017.4 Installation failed in Docker

Jump to solution

@watari, Hello watari, 

 

I met the similar issue to install PetaLinux 2017.4 into a Ubuntu image inside Docker. 

 

The ubuntu image i'm using is from Docker hub. Its version is Ubuntu 16.04.5 LTS as below.

petalinux@dc189520ae05:~/resources/petalinux$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.5 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.5 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial
petalinux@dc189520ae05:~/resources/petalinux$

The error message during installation is as below. It says "libtool" is not installed. 

But, I'm sure libtool has been installed. 

 

Press Enter to display the license agreements
Do you accept Xilinx End User License Agreement? [y/N] > y
Do you accept Webtalk Terms and Conditions? [y/N] > y
Do you accept Third Party End User License Agreement? [y/N] > y
INFO: Checking installation environment requirements...
INFO: Checking free disk space
INFO: Checking installed tools
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 335: [: ==: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 337: [: ==: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 339: [: ==: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 341: [: ==: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 343: [: ==: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 284: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 284: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 284: [: =: unary operator expected
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 252: [: =: unary operator expected
ERROR: You are missing the following system tools required by PetaLinux:

 - libtool
Please check PetaLinux installation guide - required tools and libraries pacakge section for detailed information

INFO: Checking installed development libraries
/tmp/tmp.Pur3ts7dyg/./tools/common/petalinux/utils/petalinux-env-check: line 425: [: ==: unary operator expected
Please install them with your operating system package manager, and try again
WARNING: Please install required packages.

Please refer to the PetaLinux Tools Installation Guide.

Check the troubleshooting guide at the end of that manual, and if you are
unable to resolve the issue please contact customer support with file:
   /home/petalinux/resources/petalinux/petalinux_installation_log

 

Also I checked "which" has been installed. See below:

petalinux@dc189520ae05:~/resources/petalinux$ which ls
/bin/ls

 

Is it possible you can provide more details how your docker installation look like? 

0 Kudos
Scholar watari
Scholar
911 Views
Registered: ‎06-16-2013

Re: Petalinux 2017.4 Installation failed in Docker

Jump to solution

Hi @softwind555

 

Would you share Dockerfile ?

Also, would you tell me how to install petalinux ? (install command)

 

Best regards,

 

0 Kudos
Explorer
Explorer
908 Views
Registered: ‎05-14-2015

Re: Petalinux 2017.4 Installation failed in Docker

Jump to solution

Hi @watari

 

Thank you for the reply. 

 

The docker file i'm using is in the attachment. 

 

Then, I used the command below to build an image called petalinux

 

docker build . -t petalinux

Then, the command below was used to generate an container:

docker run --entrypoint=/bin/bash --workdir=/home/petalinux/workspace --user=petalinux --name=petalinux -it petalinux:latest

Then, after log into the container system, I used the attached "install_package.sh" to install the necessary packages and tools required by XILINX.

 

Then, I generated a folder "/opt/petalinux".

 

Then, run the command below:

./petalinux-v2017.4-final-installer.run /opt/petalinux

 

 

 

0 Kudos
Highlighted
Explorer
Explorer
906 Views
Registered: ‎05-14-2015

Re: Petalinux 2017.4 Installation failed in Docker

Jump to solution

It seems the docker file is missing. 

attach it in below:

FROM ubuntu:16.04

RUN dpkg --add-architecture i386
RUN apt-get update
RUN apt-get install -y sudo

RUN echo "%sudo ALL=(ALL:ALL) ALL" >> /etc/sudoers
RUN echo "%sudo ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers

# Set locale
#RUN locale-gen en_US.UTF-8
#ENV LANG en_US.UTF-8  
#ENV LANGUAGE en_US:en  
#ENV LC_ALL en_US.UTF-8 


RUN useradd petalinux
RUN chmod +w /opt
RUN chown -R petalinux:petalinux /opt
RUN mkdir -p /home/petalinux/workspace
RUN chown -R petalinux:petalinux /home/petalinux
WORKDIR /opt
USER root
RUN usermod -aG sudo petalinux

The content of "install_package.sh" is:

#!/bin/bash

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install -y tofrodos
sudo apt-get install -y iproute2
sudo apt-get install -y gawk
sudo apt-get install -y xvfb
sudo apt-get install -y gcc-4.8
sudo apt-get install -y git
sudo apt-get install -y make
sudo apt-get install -y net-tools
sudo apt-get install -y libncurses5-dev
sudo apt-get install -y tftpd
sudo apt-get install -y tftp-hpa
sudo apt-get install -y zlib1g-dev:i386
sudo apt-get install -y libssl-dev
sudo apt-get install -y flex
sudo apt-get install -y bison
sudo apt-get install -y libselinux1
sudo apt-get install -y gnupg
sudo apt-get install -y wget
sudo apt-get install -y diffstat
sudo apt-get install -y chrpath
sudo apt-get install -y socat
sudo apt-get install -y xterm
sudo apt-get install -y autoconf
sudo apt-get install -y libtool
sudo apt-get install -y tar
sudo apt-get install -y unzip
sudo apt-get install -y texinfo
sudo apt-get install -y zlib1g-dev
sudo apt-get install -y gcc-multilib
sudo apt-get install -y build-essential
sudo apt-get install -y libsdl1.2-dev
sudo apt-get install -y libglib2.0-dev
sudo apt-get install -y screen
sudo apt-get install -y expect
sudo apt-get install -y locales
sudo apt-get install -y cpio

 

 

0 Kudos
Scholar watari
Scholar
886 Views
Registered: ‎06-16-2013

Re: Petalinux 2017.4 Installation failed in Docker

Jump to solution

Hi @softwind555

 

Would you change a package name from libtool to libtool-bin ?

Also, I find some lost package files in your shell script.

 

Would you make sure necessary package files with patalinux installation guide (UG1144) ?

 

https://www.xilinx.com/support/documentation/sw_manuals/xilinx2017_4/ug1144-petalinux-tools-reference-guide.pdf

 

Best regards

 

Observer x_abacadaba
Observer
308 Views
Registered: ‎12-21-2017

Re: Petalinux 2017.4 Installation failed in Docker

Jump to solution
The correct answer for me on this one was suggested by @watari; change libtool to libtool-bin. Thanks for the suggestion.
0 Kudos