This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM335x building rootfs errors

I’m having a trouble building rootfs. The command sequence is:

 

  cd ~/ambuild/

  git clone git://arago-project.org/git/projects/oe-layersetup.git

  cd oe-layersetup/

  ./oe-layertool-setup.sh -f configs/amsdk/amsdk-06.00.00.00-config.txt

  source conf/setenv

  export PATH=$HOME/ambuild/ti-sdk-am335x-evm-06.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin:$PATH

  MACHINE=am335x-evm bitbake tisdk-rootfs-image

 

It runs into problem when packaging gettext:

 

ERROR: QA Issue: libgettextsrc rdepends on external-linaro-toolchain-dev

ERROR: QA Issue: gettext rdepends on external-linaro-toolchain-dev

ERROR: QA run found fatal errors. Please consider fixing them.

ERROR: Function failed: do_package_qa

ERROR: Logfile of failure stored in: /home/dev3/ambuild/oe-layersetup/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-vfp-neon-3.2-oe-linux-gnueabi/gettext-0.16.1-r6-arago0/temp/log.do_package.25104

ERROR: Task 745 (/home/dev3/ambuild/oe-layersetup/sources/oe-core/meta/recipes-core/gettext/gettext_0.16.1.bb, do_package) failed with exit code '1'

NOTE: Tasks Summary: Attempted 502 tasks of which 181 didn't need to be rerun and 1 failed.

No currently running tasks (502 of 4354)

 

Summary: 1 task failed:

  /home/dev3/ambuild/oe-layersetup/sources/oe-core/meta/recipes-core/gettext/gettext_0.16.1.bb, do_package

Summary: There were 386 WARNING messages shown.

Summary: There were 4 ERROR messages shown, returning a non-zero exit code.

 

Any idea how to solve or skip this?

 

  • This seems to be making the claim that you don't have a cross compiler installed. Have you ran the setup script with the EZSDK (ti-sdk-am335x-*/ ./setup.sh) on your host?

    If so, I would look at pulling some of the dependencies from the following site:

    http://arago-project.org/wiki/index.php/Setting_Up_Build_Environment

    Also, what version of Linux are you running on your host machine?

    -Reagan

  • Hi, Reagan,

    I was following the steps in this forum post:

    http://e2e.ti.com/support/embedded/linux/f/354/t/239170.aspx

    Will follow the instructions in the page you pointed to and let  you know. Hope everything works this time.

    Was using a CentOS. Installed TI sdk, built and booted kernel successfully. It looks the sdk installed cross-toolchain inside it. That's why I was using that toolchain. Did build the kernel on both Ubuntu and CentOS.

    Thanks.

  • Hi, Reagan,

    It passes on Ubuntu but fails on CentOS. What makes the difference? I think setup.sh sets the ftp/tftp/nfs servers up. Beyond that, what packages it install that may make the difference? How to dig into the OE files to figure it out, any pointer to start with?

    Thanks.

  • Minghua

    Based on the previous errors we were seeing, it seemed that the problem was just related certain dependencies being missing that could come with Ubuntu 10 and 12.04. These are the Linux distributions we support on the host side, so we generally recommend using Ubuntu, but is there a specific reason why you're wanting to use CentOS instead?  

    We have a dedicated wiki page for configuring the host computer here: http://processors.wiki.ti.com/index.php/Sitara_Linux_Training:_Linux_Host_Configuration

    For getting it to work, you might want to start by installing the mentioned dependencies from the wiki link mentioned above. As far as what else the setup script does, you can reference the following page: http://processors.wiki.ti.com/index.php/Sitara_Linux_SDK_Setup_Script

  • Hi, Reagan,

    Using CentOS is because there are available build servers already setup. We standardized on it. Thanks for your information about setting things up on general Linux distros, I'll let you know how it goes.

    Eventually the build failed on Ubuntu with an error below. I've installed the missing package now it continues. The Ubuntu version is 12.04.2 LTS.


    ERROR: Function failed: do_compile (see /home/ambuild/oe-layersetup/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-vfp-neon-3.2-oe-linux-gnueabi/crda-1.1.1-r0/temp/log.do_compile.25345 for further information)
    ERROR: Logfile of failure stored in: /home/ambuild/oe-layersetup/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-vfp-neon-3.2-oe-linux-gnueabi/crda-1.1.1-r0/temp/log.do_compile.25345

    Thanks.

  • Hi, Reagan, Just for your information, the error log file is here. Thanks.

    DEBUG: Executing shell function do_compile
    NOTE: make -j 1 MAKEFLAGS= all_noverify
      GEN  keys-gcrypt.c
      Trusted pubkeys: pubkeys/linville.key.pub.pem
    ERROR: Failed to import the "M2Crypto" module: No module named M2Crypto
    Please install the "M2Crypto" Python module.
    On Debian GNU/Linux the package is called "python-m2crypto".
    make: *** [keys-gcrypt.c] Error 1
    ERROR: oe_runmake failed
    ERROR: Function failed: do_compile (see /home/ambuild/oe-layersetup/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-vfp-neon-3.2-oe-linux-gnueabi/crda-1.1.1-r0/temp/log.do_compile.25345 for further information)

  • Minghua,
    What did you mean in the previous post when you said you installed the missing packages and "now it continues"?

    And the error mentioned above is just saying that it needs M2Crypto as a dependency. After a google search I found a download link here: https://pypi.python.org/pypi/M2Crypto

    -Reagan

  • Hi, Reagan,

    I installed the missing package on ubuntu machine by "sudo apt-get install python-m2crypto". Then restarted the build. When I did the forum post, the build had passed the failing point and continued normally. Now it has finished ok.

    Thanks to your help. I'm going to repeat the process from a fresh ubuntu installation and will test the built images. Hopefully I can fix everything on the CentOS machine too.

    Thanks.

  • Hi, Since Jammie asked about it a few days ago, the build on CentOS 64-bit has been successful. The pre-build packages are as follows. This appears to be working but let me know if you see anything wrong.

    #from a very minimal centos x86_64 installation of only bash and yum:
    #(debian package python-m2crypto is centos m2crypto)
    #(dpkg*.rpm are downloaded from rhel6)
    #(gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux.tar.bz2
    # is downloaded from linaro)

      yum install  net-tools iputils
      yum install  chrpath
      yum install  diffstat texinfo
      yum groupinstall  "Development Tools"
      yum install  gettext-devel compat-glibc glibc-devel
      rpm -i       dpkg-1.15.5.6-6.el6.x86_64.rpm
      yum install  perl-DateTime-Format-DateParse
      rpm -i       dpkg-devel-1.15.5.6-6.el6.noarch.rpm
      yum install  m2crypto   
      yum install  wget glibc.i686 libstdc++-4.4.7-3.el6.i686
      yum install  ncurses-devel.i686
      yum install  gettext-devel.i686

      cd ~/bin/
      tar jxf ../gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux.tar.bz2

      mkdir ~/ambuild
      cd ~/ambuild/
      git clone git://arago-project.org/git/projects/oe-layersetup.git
      cd ~/ambuild/oe-layersetup
      ./oe-layertool-setup.sh -f configs/amsdk/amsdk-06.00.00.00-config.txt

      cd ~/ambuild/oe-layersetup/build
      source conf/setenv

      export PATH=~/bin/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin:$PATH
      time  MACHINE=am335x-evm bitbake tisdk-rootfs-image

    Thanks to everyone for the help!

  • Hi, Regan,

    I see there is now a new sdk config file with 07.00.00.00 version number in its name. Should we start using it instead of the 06 version? Is it stable?

    Thanks.

    [oe-layersetup]$ ls -l configs/amsdk/
     855 Oct 24 13:06 amsdk-05.06.00.00-config.txt
     844 Oct 24 13:06 amsdk-05.07.00.00-config.txt
     961 Oct 24 13:06 amsdk-06.00.00.00-config.txt
     882 Oct 24 13:06 amsdk-07.00.00.00-config.txt