1 2 Previous Next 20 Replies Latest reply on Jan 8, 2016 2:54 AM by SpiderKenny

    Linux build instructions are out of date.

    SpiderKenny

      I've been trying to get my head around building the Yocto image for Galileo Gen 2 from sources.

      In another discussion (here) I got some great pointers, but I'm getting unstuck because the build instructions are out of date.

       

      When I follow the instructions in the BSP Build Guide I get errors because it seems some of the dependencies have changed.

      When I get to the stage "Creating a file system and building the kernel using Yocto" and run ./setup.sh I get the following fatal error:

       

      Repository not found.

       

      This is when it tries to do this:

            git clone git://github.com/openembedded/meta-oe meta-oe

       

      I had a look on github and it looks like that project has renamed a few things, or moved them or something.

      They do have a meta-oe project but it is at github.com/openembedded/meta-openembedded/meta-oe so I'm not sure - can I can just update the path in setup/gitsetup.py ? or not?

      Even if that fixes this particular issue, I'm concerned there may be more out of date dependencies.

        • 1. Re: Linux build instructions are out of date.
          Intel_Peter

          Hello SpiderKenny,

           

          Thank you pointing this out, I went to openembedded/openembedded · GitHub and noticed that it is no longer supported by the project. Instead you should use the link in that document (OpenEmbedded-Core - Openembedded.org).

           

          The steps will end up looking like the following:

           

          git clone git://git.openembedded.org/openembedded-core/
          cd openembedded-core
          git chekout dylan
          

           

          Then you will have to modify the file /build/conf/bblayers.conf to add that repository, finally you will have to add the packages you need to the file /build/conf/local.conf.

           

          Peter.

          • 2. Re: Linux build instructions are out of date.
            SpiderKenny

            Thanks Peter

            I'll try to do another build tomorrow possibly.

            • 3. Re: Linux build instructions are out of date.
              SpiderKenny

              Peter

               

              Thanks for your reply, but I'm stumped!

               

              I don't know where to run those commands so that the packages are in the right place?

              And there is no file named "local.conf" anywhere to be found either in the BSP Source or the meta-clanton-v1.0.1 files? That file doesn't exist even on my entire build machine.

              • 4. Re: Linux build instructions are out of date.
                Intel_Peter

                Sorry I wasn't specific enough. Before running those commands you must have run the setup.sh script, that script is the one that creates the build directory within your TOP_DIR. Make sure which directory is your TOP_DIR since under it is where the build directory will be created. I hope I cleared your doubt. Let me know if you have any other questions .

                 

                Peter.

                • 5. Re: Linux build instructions are out of date.
                  SpiderKenny

                  Hi Peter

                   

                  Thanks again for your help.

                   

                  I'm following the build instructions found here (and following the link to "BSP Patches and Build Instructions" as found here) but there is no mention of runing setup.sh ? The error above is occurring at step 4.2 in those instructions.

                   

                  My aim here is just to be able to follow the build process in order to learn more about building images and customising the Galileo build, and thought that building the existing SD Card image would be a goo first step.

                   

                  regards,

                  Kenny.

                  • 6. Re: Linux build instructions are out of date.
                    Intel_Peter

                    Hi SpiderKenny,

                     

                    Sorry for the delay in my reply. That step is described under section four of the Intel® Quark™ SoC — BSP Build Guide, have you checked it?

                     

                    Peter.

                    • 7. Re: Linux build instructions are out of date.
                      SpiderKenny

                      Ah, OK, I've been reading release 1.0.1 of that document, which doesn't get to that until step 6. And in my case I was falling down at step 4.2.

                      There seems to be various versions of the build instructions about and it's a bit confusing!

                       

                      I will try following the steps in the 0.7.5 version of the document that you have pointed to and see how far I get now...

                      • 8. Re: Linux build instructions are out of date.
                        SpiderKenny

                        None of the build instructions make sense.

                        Starting from scratch on a Ubuntu build system, following the instructions in the BSP Build Guide release 0.7.5 that you linked to...

                         

                        1. It tells you to go to https://communities.intel.com/community/makers/software/drivers and "download the software" but doesn't tell you what software to download. So I guess that it is "Board Support Package (Yocto archive 1 of 2)" and "Board Support Package (Yocto archive 2 of 2)" so I download and extract them.

                         

                        2. Then it tells you to

                        sudo apt-get install build-essential gcc-multilib vim-common 

                         

                        Fine - no problem there!

                         

                        3. Then skip Section 3 because I want to use Yocto. As per this instruction "If you will run Yocto, skip this section and use the file output by Yocto in this

                        directory: yocto_build/tmp/deploy/images/grub.efi"

                         

                        4. Then it says to do this: "

                        # tar -xvf meta-clanton*.tar.gz
                        # cd meta-clanton*

                        # ./setup.sh

                         

                        "

                        Problem! There is no gz file called "meta-clanton...." and no where in the archives I've just extracted is there a script called "setup.sh"

                         

                         

                        So I'm guessing that the file mentioned in step 1 is no longer there.

                        The new BSP archives have a different structure or are not the "software" I'm looking for in step 1.

                         

                        So, as far as I can see, as it stands there is no way to follow the instructions in any of the BSP Build Guides because they refer to downloads that don't exist, or have dependencies on projects that have moved. Without expert Linux / Yocto / BSP experience I am stuffed like a Christmas turkey!!!

                        • 9. Re: Linux build instructions are out of date.
                          cbalmer

                          This is roughly what I used to build 1.0.4, formatting is crap as I am copying and pasting from my Confluence notes. Keep in mind, I haven't tested this on Debian 7.4 since I started making the changes. Also the steps that require you to edit files with vi, those aren't just clean copy and paste, they just say what you have to change. If you need help with them, let me know.

                           

                           

                          All commands should be run from a non-root account with sudo privileges.

                          Pre Configure Your Build Server

                          RHEL/CentOS 7.1 64bit

                          Run these commands from terminal:

                           

                          1

                           

                          2

                          3

                          4

                          5

                          6

                          7

                          8

                          9

                           

                          sudo yum groupinstall "Development Tools" -y

                           

                          sudo yum install diffstat wget ncurses-devel -y

                          sudo yum remove texinfo -y

                          curl -O http://ftp.gnu.org/gnu/texinfo/texinfo-4.13.tar.gz

                          tar xf texinfo-4.13.tar.gz

                          cd texinfo-4.13

                          ./configure

                          make

                          sudo make install

                           

                          Debian 7.4 64bit

                          Run these commands from terminal:

                           

                           

                          1

                           

                          sudo apt-get install build-essential gcc-multilib vim-common git diffstat gawk chrpath autopoint -y

                           

                          If you've never run Git before, run these commands to configure your name and email:

                          git config --global user.name "Your Name"

                          git config --global user.email "yourname@domain.com"

                          Download Version 1.0.4

                          Run these commands from terminal:

                           

                           

                          1

                           

                          2

                          3

                          4

                          5

                           

                          git clone https://github.com/01org/Galileo-Runtime.git

                           

                          cd Galileo-Runtime

                          git checkout bf562337c26a5d508f422f487a689d920a320bbb

                          tar -xf patches_v1.0.4.tar.gz

                          tar -xf meta-clanton_v1.0.1.tar.gz

                           

                          Prepare Build Environment

                          Patch Git Meta-OE Git Path

                          Run these commands from terminal:

                           

                           

                          1

                           

                          2

                          3

                           

                          vi meta-clanton_v1.0.1/setup/meta-oe.cfg

                           

                          change url = git://github.com/openembedded/meta-oe

                          to url = git://github.com/openembedded/meta-openembedded

                           

                          Patch Version 1.0.1 to 1.0.4

                          Run this command from terminal:

                           

                           

                          1

                           

                          ./patches_v1.0.4/patch.meta-clanton.sh

                           

                          Add AlexT's Layer for Patches

                          Run these commands from terminal:

                           

                           

                          1

                           

                          2

                          3

                          4

                           

                          cd ./meta-clanton_v1.0.1/

                           

                          git clone https://github.com/alext-mkrs/meta-alext-galileo.git

                          vi ./yocto_build/conf/bblayers.conf

                          Add meta-alext-galileo

                           

                          Load Build Environment and Patch in GRUB

                          Run these commands from terminal:

                           

                           

                          1

                           

                          2

                           

                          source poky/oe-init-build-env yocto_build

                           

                          git clone https://github.com/intel-iot-devkit/grub-fedora.git downloads/git2/github.com.vathpela.grub-fedora.git

                           

                          Build

                          Run this command from terminal:

                           

                           

                          1

                           

                          bitbake image-full-galileo

                           

                          1 of 1 people found this helpful
                          • 10. Re: Linux build instructions are out of date.
                            SpiderKenny

                            Thanks for the info!

                            I will give this a try and see how it goes.

                            • 11. Re: Linux build instructions are out of date.
                              SpiderKenny

                              That was all going so well, until the very last command:

                              • bitbake image-full-galileo

                               

                              Which failed with the following:

                              NOTE: Executing RunQueue Tasks

                              ERROR: Function failed: sysroot_stage_all (see /home/kenny/yocto/Galileo-Runtime/meta-clanton_v1.0.1/yocto_build/tmp/work/x86_64-linux/quilt-native/0.60-r0/temp/log.do_populate_sysroot.96832 for further information)

                              ERROR: Logfile of failure stored in: /home/kenny/yocto/Galileo-Runtime/meta-clanton_v1.0.1/yocto_build/tmp/work/x86_64-linux/quilt-native/0.60-r0/temp/log.do_populate_sysroot.96832

                              Log data follows:

                              | DEBUG: Executing python function sstate_task_prefunc

                              | DEBUG: Python function sstate_task_prefunc finished

                              | DEBUG: Executing python function do_populate_sysroot

                              | DEBUG: Executing shell function sysroot_stage_all

                              | tar: --same-order option cannot be used with -c

                              | Try 'tar --help' or 'tar --usage' for more information.

                              | tar: This does not look like a tar archive

                              | tar: Exiting with failure status due to previous errors

                              | DEBUG: Python function do_populate_sysroot finished

                              | ERROR: Function failed: sysroot_stage_all (see /home/kenny/yocto/Galileo-Runtime/meta-clanton_v1.0.1/yocto_build/tmp/work/x86_64-linux/quilt-native/0.60-r0/temp/log.do_populate_sysroot.96832 for further information)

                              ERROR: Task 10 (/home/kenny/yocto/Galileo-Runtime/meta-clanton_v1.0.1/poky/meta/recipes-devtools/quilt/quilt-native_0.60.bb, do_populate_sysroot) failed with exit code '1'

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

                              No currently running tasks (23 of 63)

                               

                              And the log file it refers to contains this:

                              DEBUG: Executing python function sstate_task_prefunc

                              DEBUG: Python function sstate_task_prefunc finished

                              DEBUG: Executing python function do_populate_sysroot

                              DEBUG: Executing shell function sysroot_stage_all

                              tar: --same-order option cannot be used with -c

                              Try 'tar --help' or 'tar --usage' for more information.

                              tar: This does not look like a tar archive

                              tar: Exiting with failure status due to previous errors

                              DEBUG: Python function do_populate_sysroot finished

                              ERROR: Function failed: sysroot_stage_all (see /home/kenny/yocto/Galileo-Runtime/meta-clanton_v1.0.1/yocto_build/tmp/work/x86_64-linux/quilt-native/0.60-r0/temp/log.do_populate_sysroot.96832 for further information)

                              • 12. Re: Linux build instructions are out of date.
                                cbalmer

                                It looks like one of the files downloaded that it is trying to extract is not a tar file. I'd retry with a clean slate.

                                 

                                I believe xbolshe has the correct fix.

                                • 13. Re: Linux build instructions are out of date.
                                  xbolshe

                                  Hi,

                                   

                                  it seems yout host Linux has a new version of TAR. May you call your host Linux version?

                                  I guess this link may be helpful for you:

                                  https://lists.yoctoproject.org/pipermail/yocto/2013-October/016540.html

                                   

                                  So, just downgrade the tar package to version 1.26

                                   

                                  BR,

                                  xbolshe

                                  • 14. Re: Linux build instructions are out of date.
                                    SpiderKenny

                                    Yes I'm using Ubuntu 15.10

                                    I will try using Ubuntu 12.04 instead.

                                     

                                    Thanks!

                                    1 2 Previous Next