7 Replies Latest reply on Oct 25, 2011 6:57 AM by darence

    Is anyone building SCC Linux for 1.4.1.3?

    tedk

      The latest SCC Linux uses the buildroot procedure and communicates with kernel.org. Since kernel.org has been down for nearly a month now due to that malacious hack, our build procedure is not working. Linus has moved his sources to GitHub, I hear.

       

      If you you are building the latest SCC Linux, how are you doing it?

       

      What I've been doing is grabbing the two needed files from a previous download and putting the files in sccLinux/buildroot-2011.05/dl before starting the build. Our procedure (described in http://communities.intel.com/docs/DOC-6869 ) wants to download linux-2.6.38.3.tar.bz2 and linux-2.6.38.4.tar.bz2.

       

      In addition, GNU has renamed the gdb file. Our procedure still looks for an old name. You can either not include gdb or take a copy of the needed gdb file from a previous download. It is called gdb-7.2.tar.bz2. Look at http://marcbug.scc-dc.com/bugzilla3/show_bug.cgi?id=195 for information on how to not include gdb.

       

      So if you are building a custom SCC Linux for >= 1.4.1, how are you doing it?

       

      Note that if you are building on an MCPC, you must ensure that sh is linked to bash and not dash as in /bin/sh -> /bin/bash.

        • 1. Re: Is anyone building SCC Linux for 1.4.1.3?
          YG

          Hi, Ted,

           

          I am trying to build SCC Linux 1.4.1.2. I am able to go through the whole building process without problem, but I could not find any information on how to convert the bzImage to the the linux.obj file that is going to be loaded onto SCC. Would you mind pointing me some reference or documents on that? Thank you very much!

           

          Best Regards,

           

          Yang

          • 2. Re: Is anyone building SCC Linux for 1.4.1.3?
            tedk

            You know, I didn't do anything special. I issued a make and then got a linux.obj in the buildroot-2011.05 directory.

             

            Do you have bin2obj in your path?

            tekubasx@marc101:~/bin$ which bin2obj
            /opt/sccKit/1.4.1.3/bin/bin2obj

             

            kernel.org is now up I see. The method we have is still not going to find gdb-7.2.tar.bz2, so you either have to disable the gdb build or just use the gdb bz2 from a previous build.

             

            It takes a long time to build (a few hours depending on your system). I'll start up a new build and see if kernel.org is responsive now. In the meantime I attached a nohup.out.bz2 from my last successful build.

            • 3. Re: Is anyone building SCC Linux for 1.4.1.3?
              tedk

              I started an SCC Linux build last night. It tool about 90 minutes. I've seen a build take up to 6 hours. In any case here's what I did ...

               

              Ensure that sh is linked to bash, "." is not in my path, LD_LIBRARY_PATH is not defined. I put (from a previous build)

              gdb-7.2.tar.bz2
              linux-2.6.38.3.tar.bz2
              linux-2.6.38.4.tar.bz2
              in ~/sccLinux_1017/sccLinux/buildroot-2011.05/dl

               

              Then ...

              mkdir sccLinux_1017

              cd sccLinux_1017

              svn co http://marcbug.scc-dc.com/svn/repository/trunk/sccLinux/

              cd sccLinux

              ./configure.sh

              cd buildroot-2011.05

              make sccDemo_defconfig

              nohup make &

              This morning I had a linux.obj in ~/sccLinux_1017/sccLinux and a nohup.out.

               

              tekubasx@marc101:~/sccLinux_1017/sccLinux/buildroot-2011.05$ head nohup.out
              /usr/bin/make -j4  HOSTCC="/usr/bin/gcc" HOSTCXX="/usr/bin/g++" silentoldconfig
              make[1]: Entering directory `/home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05'
              KCONFIG_AUTOCONFIG=/home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05/output/build/buildroot-config/auto.conf KCONFIG_AUTOHEADER=/home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05/output/build/buildroot-config/autoconf.h KCONFIG_TRISTATE=/home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05/output/build/buildroot-config/tristate.config BUILDROOT_CONFIG=/home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05/.config /home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05/output/build/buildroot-config/conf --silentoldconfig Config.in
              #
              # make dependencies written to .auto.deps
              # ATTENTION buildroot devels!
              # See top of this file before playing with this auto-preprequisites!
              #
              make[1]: Leaving directory `/home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05'
              mkdir -p /home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05/output/target
              tekubasx@marc101:~/sccLinux_1017/sccLinux/buildroot-2011.05$

              :

              :

              tekubasx@marc101:~/sccLinux_1017/sccLinux/buildroot-2011.05$ tail nohup.out
              Converting file >output/images/sccboot.bin< to .32.obj format at origin 0x3ffffc00 (0xfffff000) ... done with 4083 Bytes.
              Total conversion: 54036799 Bytes
              Pre-Merging ../linux.obj!
              Successfully created memory images...
              Successfully created LUT configuration...
              We need to copy 4 slots (LUT entry 0x7f of Core 0x00)...
              Successfully created memory images...
              Successfully created LUT configuration...
              Done... Select ./resources/linux.obj in sccBoot or sccGui!
              rm -f /home/tekubasx/sccLinux_1017/sccLinux/buildroot-2011.05/output/build/.fakeroot*
              tekubasx@marc101:~/sccLinux_1017/sccLinux/buildroot-2011.05$

              • 4. Re: Is anyone building SCC Linux for 1.4.1.3?
                YG

                Hi Ted,

                 

                Thank you very much for your reply! I have a bin2obj in my PATH

                /opt/sccKit/1.4.1/bin/bin2obj

                But I do not have a linux.obj in buildroot-2011.05 directory.

                Compared with you log, I found the following information is missing in my building log:

                 

                ----------------------------------------------------------------------------------------------------------

                >>>   Generating root filesystem image rootfs.scc
                make[1]: Entering directory `/home/tekubasx/sccLinux_913/sccLinux/buildroot-2011.05/bin2obj'
                gcc -Wall -O3     bin2obj.c   -o bin2obj
                make[1]: Leaving directory `/home/tekubasx/sccLinux_913/sccLinux/buildroot-2011.05/bin2obj'
                Mapfile: >images/load.map<
                Outfile: >linux.obj<
                Converting file >output/build/linux-2.6.38.3/arch/x86/boot/setup.bin< to .32.obj format at origin 0x00024000 (0x00090000) ... done with 12124 Bytes.
                Converting file >images/commandline.bin< to .32.obj format at origin 0x00026400 (0x00099000) ... done with 2048 Bytes.
                Converting file >output/build/linux-2.6.38.3/arch/x86/boot/vmlinux.bin< to .32.obj format at origin 0x00040000 (0x00100000) ... done with 54018032 Bytes.
                Converting file >output/images/sccboot.bin< to .32.obj format at origin 0x3ffffc00 (0xfffff000) ... done with 4083 Bytes.
                Total conversion: 54036287 Bytes
                Pre-Merging ../linux.obj!
                Successfully created memory images...
                Successfully created LUT configuration...
                We need to copy 4 slots (LUT entry 0x7f of Core 0x00)...
                Successfully created memory images...
                Successfully created LUT configuration...
                Done... Select ./resources/linux.obj in sccBoot or sccGui!
                ----------------------------------------------------------------------------------------------------------
                I will follow your step to rebuild the whole thing to see if I have any luck...
                Thank you very much!
                Yang
                • 5. Re: Is anyone building SCC Linux for 1.4.1.3?
                  darence
                  [INFO ]  Performing some trivial sanity checks
                  [INFO ]  Build started 20111025.052851
                  [INFO ]  Building environment variables
                  [INFO ]  =================================================================
                  [INFO ]  Retrieving needed toolchain components' tarballs
                  [INFO ]  Retrieving needed toolchain components' tarballs: done in 0.12s (at 00:03)
                  [INFO ]  =================================================================
                  [INFO ]  Extracting, patching and installing companion tools
                  [01:14] - *** %n in writable segment detected ***
                  [ERROR]      checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH.
                  [ERROR]   
                  [ERROR]    >>  Build failed in step 'Installing autoconf'
                  [ERROR]    >>        called in step 'Extracting, patching and installing companion tools'
                  [ERROR]    >>
                  [ERROR]    >>  Error happened in: CT_DoExecLog[scripts/functions]
                  [ERROR]    >>        called from: do_companion_tools_autoconf_build[scripts/build/companion_tools/200-autoconf.sh@26]
                  [ERROR]    >>        called from: do_companion_tools[scripts/build/companion_tools.sh@35]
                  [ERROR]    >>        called from: main[scripts/crosstool-NG.sh@537]
                  [ERROR]    >>
                  [ERROR]    >>  For more info on this error, look at the file: 'build.log'
                  [ERROR]    >>  There is a list of known issues, some with workarounds, in:
                  [ERROR]    >>      'docs/B - Known issues.txt'
                  [ERROR]   
                  [ERROR]    Build failed in step 'Extracting, patching and installing companion tools'
                  [ERROR]   
                  [ERROR]    (elapsed: 1:46.73)
                  [01:47] / make[2]: *** [build] Error 1
                  make[1]: *** [build.4] Error 2

                   

                  That is what I get during kernel compilation. Does someone have experience with the same problem?

                  • 6. Re: Is anyone building SCC Linux for 1.4.1.3?
                    YG

                    I think I have similar problem before. Please check if your /bin/sh is pointing /bin/bash, not /bin/dash.

                    • 7. Re: Is anyone building SCC Linux for 1.4.1.3?
                      tedk

                      I think YG nailed it. marc041 has sh linked to dash not bash. I'll relink it to bash ... it requires sudo priv. And then I'll start a build.

                       

                      There's a bunch of reconfig necessary to build this new Linux. Unfortunately, the default config for our MCPCs does not allow the build to occur. This is resulting in inconvenience for users wanting to build a new SCC Linux ... more users want to do this than we anticipated, Configuring the MCPC to build the new SCC Linux requires sudo actions.

                       

                      Probably the best way to approach this is to try a build and then if it doesn't work, file a "Marc Administration Needed" bug and we'll reconfigure. Then we can treat the reconfigs on a first-come, first-served basis.

                       

                      If you have your own MCPC/SCC system the SCC Linux README (that comes with the download) and the How to Build Linux 1.4.1.x pdf on this site http://communities.intel.com/docs/DOC-6869 describe the necessary reconfigurations. But if you see something missing or find the steps confusing, please don't hesitate to post here.