« Rebuild 2.1.0/GDB 6.0 | Main | 2.1.0 GDB Build »

The Quest to build 3.0.0 from 3.4.3

  • Worked to build 3.0.0 from 3.4.3
Andrew DeFaria wrote:

Performed the following actions:

Change packaging by hand:

  1. cd /build/toolchain/install-powerpc178/cdk/linux-elf-ppc
  2. mkdir bin
  3. cd bin
  4. Created symlinks for the following: ar, as, byacc, c++, cc, cmp, diff, diff3, expect, flex, gcc, ld, make, nm, ranlib, size, strip to link to ../usr/bin (exception: cc -> ../usr/bin/gcc). Note: byacc, c++, cmp, diff, diff3 and expect do not exist in ../usr/bin! Removed symlinks
  5. cd ../..
  6. mkdir lib
  7. Copied cdk/linux-elf-ppc/usr/lib/gcc/powerpc-lynx-lynxos178/3.4.3/libgcc.a -> lib Note: Unable to find any libstdc++.a's!
  8. Created linux-elf-ppc.tar.gz with tar -zcvf ../linux-elf-ppc.tar.gz .

Removing libgcc from LOS178:

  1. cd /build/los178/src/lib/libgcc
  2. rm Makefile
  3. cvs delete Makefile
  4. cd ..
  5. Editted Makefile to remove libgcc from SUBCOMPONENTS
  6. cd /build/los178/src/cdk/common/bison-1.19
  7. rm Makefile
  8. cvs delete Makefile (Note: there are many other files here. Should they be likewise removed?)
  9. cd ../links
  10. rm Makefile
  11. cvs delete Makefile
  12. cd /build/los178/src/cdk
  13. Editted Makefile to remove references to bison-1.19 and links
  14. Editted Makefile to add -0.9.6 to "openssl".

The following is the result of building src/cdk:

  • coffcorrupt - for test PASSED
  • cofflook - for inspecting coff object PASSED
  • config - needed PASSED
  • crc - append script uses this PASSED
  • elflook - for inspecting elf object FAILED
  • install - use for installation PASSED
  • m4-1.4 - needed for config.tbl Didn't find anything about this!
  • man2html - html man page utility Didn't find anything about this!
  • mkbootprep - use by vmpc PASSED
  • mkimage - maybe need to be update to support elf kernel? PASSED
  • mktimestamp - needed for kernel timestamp PASSED
  • prepend-crc - mkboot178 uses this PASSED
  • gzip-1.2.4 - only for solaris host PASSED
  • tar-1.11.2 - only for solaris host FAILED
  • vctchk - use for checking vct FAILED
  • openssl (Failed to build saying it couldn't find /build/los178/cdk/linux-elf-ppc/bin/make)

I will try to pick this up from home but I have been having some connectivity issues lately...

Picking up...

Building LOS178 after sections I & II above completed:

  1. Logged in as int
  2. Exported toolchain source -> /build/toolchain.src (via tag DEV_LOS178_3p0p0_ppc_20050607)
  3. Instructions say to package source yet Makefile's package target does not include fixup.sh so performed this by hand.
  4. Stored previously successfully built toolchain -> t3:/export/dev_archive/los178/3p0p0/toolchain/20050607
  5. Checked that europa:/build/los178 had TOT. Only differences were the changes to the Makefile(s) describe above and the cvs deletes that I did.
  6. rm sys/miscgcc/*.o
  7. tar -zxvf /build/bin-image/ppc.cdksol.tar.gz sys/miscgcc
  8. tar -zxpf/build/1033-00.cdklinux.tar.gz
  9. Sourced SETUP.bash
  10. make DEVELOPMENT=yes install > install.log 2>&1
  11. make failed due to lack of crc (and a syntax error I introduced in the src/lib/Makefile - missed a "\"!). The crc was missing because I skipped a step, the make install in src/cdk. Turns out I skipped this step because I thought we had performed this yesterday - and we did - but we had some problems there and Vinnie helped me to get that to work. Unfortunately we were using make all during that time and failed to to the make install portion).
  12. make failed with the following:

          europa:check -t -v install.log
          ERRORS:
          make[3]: *** No rule to make target `_udivdi3.o', needed by `archive_step'.  Stop.
          make[3]: *** No rule to make target `install'.  Stop.
          make[3]: *** No rule to make target `install'.  Stop.
          make[3]: *** No rule to make target `install'.  Stop.
          make[3]: *** No rule to make target `install'.  Stop.
          make[3]: *** No rule to make target `install'.  Stop.
          /build/los178/cdk/linux-xcoff-ppc/bin/ld: cannot open -lmiscgcc: No such file or directory
          make[4]: *** [common_all] Error 1
          make[3]: *** [re_all] Error 2
          /build/los178/cdk/linux-xcoff-ppc/bin/ld: cannot open -lmiscgcc: No such file or directory
          make[4]: *** [a.out] Error 1
          make[3]: *** [re_all] Error 2
          make[2]: *** [real] Error 2
          make[1]: *** [install] Error 2
          make[3]: *** [gunzip] Error 1
          make[3]: *** [nohup] Error 1
          make[3]: *** [install_common] Error 1
          make[3]: *** [install] Error 1
          make[2]: *** [real] Error 2
          make[1]: *** [install] Error 2
          File: install.log Errors: 20 Warnings: 2545
    

    The issues here boil down to the _udivd3.o problem mostly (the No rule to make target `install' are the csp.x86, ibm440ep stuff and there are few permissions problems with chmod since this build was done as int this time). The _udivd3.o problem results from a new .o file introduced by Gilbert and CR #542 and a corresponding change to the Makefile. The miscgcc .o files are gotten from ppc.cdksol.tar.gz but there is no _udivd3.o in ppc.cdksol.tar.gz.

    After discussing this with Vinnie we determined that Gilbert had checked in these .o files when what really needs to be done is for us to include this new .o file into the ppc.cdk[sol|linux].tar.gz images in bin-image.

  13. After building the following errors remain:

    1. 5 "No rule to make target `install`" remains for devices.ibm440ep, drivers.ibm440ep, csp.440, csp.x86 and bsp.ibm440ep. These are known problems.
    2. Various permissions problems dealing with the fact that I had initially built things as adefaria and switched to building as int.