diff options
-rw-r--r-- | bootstrap/README.Solaris | 70 |
1 files changed, 55 insertions, 15 deletions
diff --git a/bootstrap/README.Solaris b/bootstrap/README.Solaris index f1817b6ade9..ef90e903b9f 100644 --- a/bootstrap/README.Solaris +++ b/bootstrap/README.Solaris @@ -1,9 +1,36 @@ -$NetBSD: README.Solaris,v 1.16 2021/11/23 09:10:03 schmonz Exp $ +$NetBSD: README.Solaris,v 1.17 2022/04/04 00:26:31 gdt Exp $ + +This README describes pkgsrc on a variety of Solaris-derived operating +systems. It corresponds to pkgsrc/platform/SunOS.mk. The relevant +operating systems are: + - Solaris (from Sun/Oracle, also Sun Solaris, Oracle Solaris) + - OpenSolaris (from Sun) + - illumos (open-source fork, OpenIndiana, SmartOS, and others) + +(pkgsrc is not currently known to work on SunOS 4.) + +Prerequisites +------------- You will need a working C compiler. Any version of gcc >2.8 should work, 2.95.x and 3.x have been tested. SunPro 5 and 8 have been tested, but versions in between should work, too. +Please note the use of GNU binutils on Solaris is not supported. + +Whichever compiler you use, please ensure the compiler tools and +your $prefix are in your PATH. This includes /usr/ccs/{bin,lib} +and e.g. /usr/pkg/{bin,sbin}. + +You should set the following variables in your mk.conf file: + CC= cc + CXX= CC + CPP= cc -E + CXXCPP= CC -E + +To build 64-bit binaries, pass '--abi=64' to bootstrap, and also see the +crle(1) man page to configure the runtime linking environment. + The following packages are the minimum required on Solaris 8 to bootstrap and build packages. @@ -17,8 +44,6 @@ bootstrap and build packages. Realistically you will need more, such as SUNWlibm, and SUNWlibC for C++ packages if you are using SunPro. -Please note the use of GNU binutils on Solaris is not supported. - pkgsrc in Solaris Zones ----------------------- @@ -42,6 +67,7 @@ Tested on OpenSolaris 5.11 snv_105 and pkgsrc bootstrap as at Jan 2009. If you are using gcc -------------------- + It makes life much simpler if you only use the same gcc consistently for building all packages. @@ -64,6 +90,7 @@ http://www.sunfreeware.com/ If you are using Sun WorkShop ----------------------------- + You will need at least the following packages installed to build C and C++ packages. @@ -89,8 +116,23 @@ Sun ONE Studio 8: The corresponding 64-bit packages are also required to build 64-bit binaries and libraries. -To build 64-bit binaries, pass '--abi=64' to bootstrap, and also see the -crle(1) man page to configure the runtime linking environment. +Oracle Studio 12 (IPS): + + pkg:/developer/developerstudio-12[3-6] studio + pkg:/system/library/studio-runtime Runtime Support For Solaris Studio + +This will install the whole toolchain, along with the observability tools and +the studio IDE. + +If you want to select individual packages, make sure to have runtime libraries +installed. For instance, on Studio 12.6, you can do that with: + + pkg install --accept developerstudio-126/library/c++-libs \ + developerstudio-126/library/c-libs \ + developerstudio-126/library/f90-libs \ + developerstudio-126/library/math-libs \ + developerstudio-126/library/perflib \ + developerstudio-126/library/studio-gccrt pkgsrc defaults to finding the Sun compiler in /opt/SUNWspro. If you use a different prefix, pass SUNWSPROBASE in the environment to bootstrap. If 'cc' @@ -101,21 +143,19 @@ bootstrap with a non-standard install: SUNWSPROBASE=/opt/studio12/SUNWspro \ ./bootstrap --abi=64 -When bootstrap is finished your default mk.conf will contain ABI and -SUNWSPROBASE so you will not need to set these variables again. +On Solaris 11: -Whichever compiler you use, please ensure the compiler tools and -your $prefix are in your PATH. This includes /usr/ccs/{bin,lib} -and eg. /usr/pkg/{bin,sbin}. + env CC=/opt/developerstudio12.*/bin/cc \ + SUNWSPROBASE=/opt/developerstudio12.* \ + PKGSRC_COMPILER=sunpro \ + ./bootstrap --abi=64 -You should set the following variables in your mk.conf file: - CC= cc - CXX= CC - CPP= cc -E - CXXCPP= CC -E +When bootstrap is finished your default mk.conf will contain ABI and +SUNWSPROBASE so you will not need to set these variables again. Common problems --------------- + Sometimes, when using libtool, /bin/ksh crashes with a segmentation fault. The workaround is to use another shell for the configure scripts, for example by installing shells/bash and adding the following lines to your mk.conf: |