Get Sun Studio - C, C++, & Fortran compilers and Tools v12.1.1 (March 2010) or higher:
The recommended build environment can use Sun Studio version 12.1.1 (March 2010) or SS 12.2. Both compilers are available from Oracle:
pkg install developer/sunstudio12u1 (from IPS DEV, SS 12.1.1)
Note: Sun Studio 12.2 is now available. Recommend Sun Studio 12.1.1 or Sun Studio 12.2.
Get GCC 3.4.3:
pkg install developer/gcc-3
Get CBE 1.7.0 from:
...
The recommended OS to build OpenIndiana on will always be the latest development release at the time you are building. The exception to the OS rule is for bootstrapping OpenIndiana from OpenSolaris where you should have the latest development binary release (b134) installed which can be obtained from Genunix. (In case you want to upgrade an older OpenSolaris install to osol-134, follow How to upgrade to osol-134).
...
The recommended build environment uses a patched Sun Studio 12 to compile along side a patched Sun Studio 12.1 to provide the lint. Both compilers are available to download as tarballs from here:
Warning |
---|
These links are no longer active. Oracle has removed these packages from public view. |
Make sure your regular user account has "pkg install/uninstall" privilege in /etc/user_attr.
Code Block |
---|
myregularaccount::::profiles=Primary Administrator;roles=root |
Before beginning, make sure you don't have Sun Studio installed:
Code Block |
---|
pkg info | grep sunstu |
If they are installed, remove. Eg:
Code Block |
---|
pfexec pkg uninstall -r pkg://opensolaris.org/developer/sunstudioexpress \
pkg://opensolaris.org/sunstudioexpress \
pkg://opensolaris.org/ss-dev \
pkg://opensolaris.org/developer/sunstudio12u1 |
Keep running "pkg info | grep sunstu" and uninstalling until nothing reports back.
Then double check there is nothing under /opt related to compilers, and remove as necessary, eg:
Code Block |
---|
ls -l /opt
pfexec rm -rf /opt/SUNWspro /opt/sunstudio12.1 /opt/onbld
# etc |
Then install the tarballs:
Code Block |
---|
pfexec mkdir /opt/SUNWspro
cd /opt/SUNWspro
bzip2 -dc $DOWNLOAD_LOCATION/sunstudio12-patched-ii-2009Sep-sol-{x86,sparc}.tar.bz2 | pfexec tar xvf -
cd /opt
gzip -dc $DOWNLOAD_LOCATION/sunstudio12u1-patched-ii-2010Feb-sol-{x86,sparc}.tar.gz | pfexec tar xvf -
pfexec ln -s ../sunstudio12.1 /opt/SUNWspro |
Information of installed Sun Studio Compiler for x86 platform.
Code Block |
---|
root@oi:/opt/SUNWspro# ls -lrt
total 904990
drwxr-xr-x 3 root sys 3 2008-06-03 12:15 inventory
drwxr-xr-x 12 root sys 13 2008-06-03 12:15 man
drwxr-xr-x 2 root sys 3 2008-06-03 12:16 docs
drwxr-xr-x 21 root sys 21 2008-06-03 12:17 prod
drwxr-xr-x 2 root sys 5 2008-06-03 12:17 include
drwxr-xr-x 5 root sys 5 2008-06-03 12:17 contrib
drwxr-xr-x 2 root sys 7 2008-06-03 12:17 examples
drwxr-xr-x 2 root sys 25 2008-06-03 12:17 READMEs
drwxr-xr-x 3 root sys 95 2008-06-03 12:18 bin
drwxr-xr-x 9 root sys 40 2008-06-03 12:18 lib
drwxr-xr-x 5 root sys 5 2008-06-03 12:18 sfw
lrwxrwxrwx 1 root root 9 2011-04-01 11:37 atd1 -> prod/atd1
lrwxrwxrwx 1 root root 15 2011-04-01 11:37 LEGAL-SS12 -> prod/LEGAL-SS12
lrwxrwxrwx 1 root root 16 2011-04-01 11:40 sunstudio12.1 -> ../sunstudio12.1
root@oi:/opt/SUNWspro#
root@oi:~# cc -V
cc: Sun C 5.9 SunOS_i386 Patch 124868-10 2009/04/30
usage: cc [ options] files. Use 'cc -flags' for details
root@oi:~# which cc
/opt/SUNWspro/bin/cc
root@oi:~# |
Note: Sun Studio 12.2 is available but has not been tested so please do not use at this time.
...
Install some packages:
Code Block |
---|
pfexec pkg install developer/gcc-3 \
developer/opensolaris/pkg5 \
developer/swig \
developer/build/automake-110 \
developer/build/autoconf \
developer/versioning/subversion |
...
Get CBE 1.7.0
Code Block |
---|
svn co svn+ssh://anon@svn.opensolaris.org/svn/jds/jds-cbe/trunk jds- |
...
cbe or from http:// |
...
dlc. |
...
sun. |
...
Get GNU gettext 0.16.1 or higher from SFW:
...
com/osol/jds/downloads/cbe/test/ |
The ./cbe-install script is not meant to be run as root. It has to be run as user with "Software Installation" or "Primary Administrator" rights! (See /etc/user_attr).
Code Block |
---|
<snipped>
Package SUNWgpch is not installed
* Would you like the CBE installer to install this package for you? [yes] no
* Would you like to skip all missing packages? [no]: yes
* Enter the base directory (prefix) of the cbe [/opt/dtbld]: enter for default
* Would you like to do this now? [no]: enter for default
* Would you like to configure more compilers for use with the Desktop CBE? [no]: enter for default
* Please select the default compiler [3]: enter for default
Answer 'no' to all remaining questions. |
Following log is the last part of install log.
Code Block |
---|
<snipped>
Installation of <SFpkgbuild> was successful.
Building CBEenv
INFO: Copying %use'd or %include'd spec files to SPECS directory
INFO: Processing spec files
INFO: Installing package CBEenv
Summary:
package | status | details
---------------------------------+-------------+-------------------------------
CBEenv | INSTALLED |
CBE setup complete
Run
. /opt/dtbld/bin/env.sh [environment]
or
source /opt/dtbld/bin/env.csh [environment]
depending on your shell, to use this build environment.
You can also run /opt/dtbld/bin/env.sh [environment] to start subshell.
Installation log saved in /tmp/desktop-cbe-install-2011-04-06-08:58.log
oi@openindiana:~/oi/src/jds-cbe$
|
Set the CBE build environment by env.sh
Code Block |
---|
oi@openindiana:~/oi/src/jds-cbe$ . /opt/dtbld/bin/env.sh
Desktop CBE version 1.7.0 built on 2011-04-06 by oi@openindiana
Unsetting USER
Unsetting LANG
Using CC=/opt/SUNWspro/bin/cc
Using CXX=/opt/SUNWspro/bin/CC
Setting PATH=/opt/dtbld/bin:/opt/SUNWspro/bin:/usr/ccs/bin:/usr/gnu/bin:/usr/bin:/usr/sbin:/bin:/usr/sfw/bin
Setting CONFIG_SHELL=/bin/bash
Setting MAKESHELL=/bin/bash
Setting MAKE=/opt/dtbld/bin/make
Setting M4=/opt/dtbld/bin/m4
oi@openindiana:~/oi/src/jds-cbe$ |
Then remove gnu make, so that (the other) make is the default Different consolidations require different make versions so do not remove any binaries you install while setting up your environment. Please pay close attention to the PATH variables that are set in each consolidations build instructions.
...
Install GNU gettext-0.16.1:
...
...
Alternative: You may use pkgbuild from CBE (above).
[18:04] <Meths> Otherwise, cd jds-cbe-dir; pkgbuild -bb CBEgettext.spec
[18:04] <Meths> cd ~/packages/PKGS/CBEgettext/reloc
[18:05] <Meths> tar cf - * | ( cd /opt/dtbld; pfexec tar xvpf - )
...
Once you've setup and installed the recommended build environment, the build process can/shall be entirely done as user.