Project Tools
The OpenSolaris PPC-Dev project has a GNU based cross development toolchain for PowerPC port bring up. The tools are for a Solaris x86 host only, currently no Sparc based host is available. The project uses 32 bit versions of GNU binutils 2.16 and GCC 3.4.3 during this development phase.
What you find below is a set of archives that supports the project along with a general status. The original build of GCC and binutils are in the form of a Solaris package. These set of tools, by themselves can be used to build the original 10/02/2006 release of the project's source code ie: rev 1 of the svn repository and are sufficient to build up to rev 68 of the ppc-dev svn repository. You will then be required to upgrade the original tools in order to support the progress that has been made, most notably the switch to a solaris cross dev ld. Details can be found at the GNU task map page. We only mention this to track a bit of the development history, if you are here for the first time read the details below.
POLARIS titled GNU binutils 2.16 and GCC 3.4.3 are binary packages and also have source patches against the std GNU releases.
Status 03/01/09
updated ONBLD tools - ppc-dev_ppc_onbld_2009r1.tar.bz2: new solaris x86 ld, shared libelf.so.1, liblddbg.so.4, libld.so.4 and aw. These changes are necessary to support builds of the libraries ie: libc. We encourage folks to build cmd/sgs and test out the overall process from source and provide feedback but you can also take the more straightforward route and use the archive supplied here.
Status 02/08/09
updated ONBLD tools - ppc-dev_ppc_onbld.tar.bz2: ctfconvert utility
Direct alert msg to stderr. This was producing an error in the assym.h file generation in the libc build.
Status 11/02/07
There is an updated toolchain posted that has g++, the cplusplus language frontend as part of the set. The tar file had to be split into 2 parts so please install both over your existing tools.
Also we have moved the x-dev solaris ld into the onbld update so this is required. The ld shared libs have also been updated here. So be sure to install this with the others, 3 updated files in all.
| # Solaris x86 Packages and Archives # | ||||
| Software package | version | binary package | source | notes |
|---|---|---|---|---|
| GNU binutils - xdev | 2.16 | POLARISbinutils.tar.bz2 | POLARISbinutils-src.tar.bz2 | original community cross-dev binutils in a solaris package |
| GNU GCC - xdev | 3.4.3 | POLARISgcc.tar.bz2 | POLARISgcc-src.tar.bz2 | original community cross-dev GCC toolchain in a solaris package |
| SUNWonbld tools for ppc | 1.0 | SUNWonbld-ppc-extra.tar | none | original community cross-dev onbld tools - deprecated |
| GNU GCC | 3.4.3 | none | gcc-3.4.3.tar.bz2 | original GCC 3.4.3 sources |
| GNU Toolchain update - xdev PT1 | 3.4.3, w/g++ | ppc-dev_tools_v3_pt1.tar.bz2 | solaris_ppc_diff_gcc.patch.bz2 | binaries of GNU toolchain, install over existing ones - part 1 |
| GNU Toolchain update - xdev PT2 | 3.4.3, w/g++ | ppc-dev_tools_v3_pt2.tar.bz2 | solaris_ppc_diff_gcc.patch.bz2 | binaries of GNU toolchain, install over existing ones - part 2 |
| ONBLD update | ld x-dev, ctf utils | ppc-dev_ppc_onbld_2009r1.tar.bz2 | solaris_ppc_binutils_diff.patch.bz2 | binaries of some binutils pieces and ctf utils which install over the existing ones |
If you are installing the tools for the first time the suggested process is to install the two solaris packages first
POLARISbinutils.tar.bz2 & POLARISgcc.tar.bz2
then install
SUNWonbld-ppc-extra.tar
then from your root dir unzip, then extract the following tar file after unzipping it
ppc-dev~_ppc~_onbld~_2009r1.tar.bz2
and then unzip and extract the two updated GCC based binaries
ppc-dev~_tools~_v3~_pt1.tar.bz2
ppc-dev~_tools~_v3~_pt2.tar.bz2
This will update your toolchain to build the pending source release. If you already have the original tools installed just extract the ppc-dev tar files and the onbld updates.
Note that updated GCC bins use the cross dev solaris ld and it's associated c runtime libs in the ppc_onbld tools archive. It currently is being updated on a continuous basis so checl the status frequently.