Re: OpenJDK 11.0.2 cannot build on Solaris 11.4

2019-01-30 Thread Andrew Watkins



Thanks worked like a dream!

For reference to build on Solaris 11.4

# export 
PATH=/usr/local/openjdk/jdk11/bin:/opt/solarisstudio12.4/bin:/usr/bin:/usr/sbin:/usr/gnu/bin:/usr/sfw/bin

# hg clone http://hg.openjdk.java.net/jdk/jdk12
# bash configure  --prefix=/usr/local/openjdk/jdk12 
--with-devkit=/home/andrew/src/openjdk/jdk12/build/devkit 
--disable-hotspot-gtest --with-jvm-features=-shenandoahgc,-dtrace

# gmake
# gmake images

Cheers,

Andrew



On 01/30/19 09:35 AM, Ao Qi wrote:

Hi Andrew Watkins,

jdk12 can be built on Solaris 11.4 x86 solarisstudio12.4, but it needs
a EM_486 patch, and configure with --disable-hotspot-gtest
--with-jvm-features=-shenandoahgc,-dtrace

Cheers,
Ao Qi

On Wed, Jan 30, 2019 at 5:10 PM Andrew Watkins  wrote:



On 01/18/19 05:23 PM, Erik Joelsson wrote:

.

You could try the open/make/devkit/createSolarisDevkit12.4.sh script
and see if that helps you build something that works better. That's
what we use at Oracle.

/Erik

Is there any hope of getting OpenJDK 12 to build on the Free download
of  Solaris Studio 12.4 or 12.6, since for us Oracle Solaris 11 x86_64
shops we are unable to get Java 12 or above with out it.

OpenJDK 12 requires latest versions of solarisstudio-124 or
developerstudio-126

Of course this would not be a problem if Oracle supplied us with Solaris
11 x86_64 Java 11 or 12 and not just the SPARC version.

Cheers,

Andrew

--
Andrew Watkins * Birkbeck, University of London * Computer Science *
* http://notallmicrosoft.blogspot.com *
* UKOUG Systems SIG Chair *
* UKOUG Tech committee *
* tel: 020 7631 6720 *

::e-mails are only read & actioned between 0900 and 1800 hours (Monday - Friday)



--
Andrew Watkins * Birkbeck, University of London * Computer Science *
* http://notallmicrosoft.blogspot.com *
* UKOUG Systems SIG Chair *
* UKOUG Tech committee *
* tel: 020 7631 6720 *

::e-mails are only read & actioned between 0900 and 1800 hours (Monday - Friday)



Re: OpenJDK 11.0.2 cannot build on Solaris 11.4

2019-01-30 Thread Ao Qi
Hi Andrew Watkins,

jdk12 can be built on Solaris 11.4 x86 solarisstudio12.4, but it needs
a EM_486 patch, and configure with --disable-hotspot-gtest
--with-jvm-features=-shenandoahgc,-dtrace

Cheers,
Ao Qi

On Wed, Jan 30, 2019 at 5:10 PM Andrew Watkins  wrote:
>
>
>
> On 01/18/19 05:23 PM, Erik Joelsson wrote:
> > .
> >
> > You could try the open/make/devkit/createSolarisDevkit12.4.sh script
> > and see if that helps you build something that works better. That's
> > what we use at Oracle.
> >
> > /Erik
>
> Is there any hope of getting OpenJDK 12 to build on the Free download
> of  Solaris Studio 12.4 or 12.6, since for us Oracle Solaris 11 x86_64
> shops we are unable to get Java 12 or above with out it.
>
> OpenJDK 12 requires latest versions of solarisstudio-124 or
> developerstudio-126
>
> Of course this would not be a problem if Oracle supplied us with Solaris
> 11 x86_64 Java 11 or 12 and not just the SPARC version.
>
> Cheers,
>
> Andrew
>
> --
> Andrew Watkins * Birkbeck, University of London * Computer Science *
> * http://notallmicrosoft.blogspot.com *
> * UKOUG Systems SIG Chair *
> * UKOUG Tech committee *
> * tel: 020 7631 6720 *
>
> ::e-mails are only read & actioned between 0900 and 1800 hours (Monday - 
> Friday)
>


Re: OpenJDK 11.0.2 cannot build on Solaris 11.4

2019-01-30 Thread Ao Qi
Hi Rob,

If I recall it correctly, maybe configure with --disable-hotspot-gtest
can solve your problem.

Cheer,
Ao Qi

On Fri, Jan 18, 2019 at 5:57 AM Rob Petti  wrote:
>
> Hey Folks,
>
> I've discovered that OpenJDK 11 cannot be built on Solaris 11.4. Normally
> we would just try to rebuild our system as 11.1, but that's not possible
> since media for that base release is no longer available.
>
> Are there plans to support compilation on Oracle's latest and greatest, or
> at least provide a proper method of building in such an environment?
>
> For the record, here are the errors I'm getting. This is with solarisstudio
> 12.4 (which BTW wouldn't install on Solaris 11.4 without unfreezing the
> python version):
>
> # bash configure --with-boot-jdk=
> --with-devkit=/opt/solarisstudio12.4
> # gmake bootcycle-images
> ...
> Compiling 163 files for jdk.jfr
> "/root/jdk11/jdk11u/src/hotspot/os/solaris/os_solaris.cpp", line 1580:
> Error: EM_486 is not defined.
> "/root/jdk11/jdk11u/src/hotspot/os/solaris/os_solaris.cpp", line 1618:
> Error: The type "const arch_t[]" is incomplete.
> 2 Error(s) detected.
> gmake[3]: *** [lib/CompileJvm.gmk:151:
> /root/jdk11/jdk11u/build/solaris-sparcv9-normal-server-release/hotspot/variant-server/libjvm/objs/os_solaris.o]
> Error 2
>
> After patching with http://robpetti.com/files/jdk11-sol114.patch to fix
> https://bugs.openjdk.java.net/browse/JDK-8182035, it gets a bit further,
> but still fails:
>
> Compiling 64 files for jdk.jconsole
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 161: Error: __pad is not a member of const __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 163: Error: __pad is not a member of const __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 165: Error: __pad is not a member of const __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 165: Error: __pad is not a member of const __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 167: Error: __pad is not a member of const __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 170: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 170: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 172: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 172: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 174: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 174: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 176: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 176: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 178: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 178: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 182: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 183: Error: __pad is not a member of __FILE.
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 184: Error: __pad is not a member of __FILE.
> 18 Error(s) detected.
>
> It seems the "right" way to do this would be to create a sysroot with older
> 11.1 headers and libraries, and compile against that. Unfortunately the
> --with-sysroot configure option does not completely work correctly. The
> compiler still tries to include /usr/include instead of the sysroot
> headers, and that just results in more build errors. The only way it seems
> to truly get it to use the sysroot was to physically replace /usr/include
> on the machine with the version from the sysroot. This is obviously less
> than ideal.
>
> Is the --with-sysroot issue already known? Is there any other way around it
> aside from manually replacing headers in the system just to compile the JDK?
>
> --
> 
> Rob Petti
> about.me/robpetti
> 


Re: OpenJDK 11.0.2 cannot build on Solaris 11.4

2019-01-30 Thread Andrew Watkins




On 01/18/19 05:23 PM, Erik Joelsson wrote:

.

You could try the open/make/devkit/createSolarisDevkit12.4.sh script 
and see if that helps you build something that works better. That's 
what we use at Oracle.


/Erik


Is there any hope of getting OpenJDK 12 to build on the Free download 
of  Solaris Studio 12.4 or 12.6, since for us Oracle Solaris 11 x86_64 
shops we are unable to get Java 12 or above with out it.


OpenJDK 12 requires latest versions of solarisstudio-124 or 
developerstudio-126


Of course this would not be a problem if Oracle supplied us with Solaris 
11 x86_64 Java 11 or 12 and not just the SPARC version.


Cheers,

Andrew

--
Andrew Watkins * Birkbeck, University of London * Computer Science *
* http://notallmicrosoft.blogspot.com *
* UKOUG Systems SIG Chair *
* UKOUG Tech committee *
* tel: 020 7631 6720 *

::e-mails are only read & actioned between 0900 and 1800 hours (Monday - Friday)



Re: OpenJDK 11.0.2 cannot build on Solaris 11.4

2019-01-18 Thread Erik Joelsson

On 2019-01-18 10:17, Rob Petti wrote:

Thanks, Erik!

I tried the createSolarisDevkit12.4.sh 
 script, but none of the packages 
in that list exist in the package manager at those specific versions, 
so it just fails. I basically had to make my own list of packages from 
scratch using the existing one as a guideline.


Zones sound like a cleaner solution to me, but I don't know enough 
about them to know how to install a specific base OS version. All the 
docs I find just install the same version as the 'host'. I'll need to 
do a bunch more research, it seems...


I know there is a difference between zones running the same OS version 
and those that run a different. I believe you need what's called a 
kernel zone to run a different version.


/Erik

On Fri, Jan 18, 2019 at 5:17 PM Erik Joelsson 
mailto:erik.joels...@oracle.com>> wrote:


Hello Rob,

On 2019-01-17 13:57, Rob Petti wrote:
> Hey Folks,
>
> I've discovered that OpenJDK 11 cannot be built on Solaris 11.4.
Normally
> we would just try to rebuild our system as 11.1, but that's not
possible
> since media for that base release is no longer available.
>
> Are there plans to support compilation on Oracle's latest and
greatest, or
> at least provide a proper method of building in such an environment?

I can't speak for all OpenJDK contributors, but Oracle has no current
plans for this. We are required to build on the oldest supported
Solaris
version to produce binaries that are compatible with that version.
We do
not produce different binaries for different versions of an OS.
Also, as
I understand it, Oracle is no longer involved in open support of 11u.
Perhaps the new maintainer will accept contributions for fixing
the issue.

> For the record, here are the errors I'm getting. This is with
solarisstudio
> 12.4 (which BTW wouldn't install on Solaris 11.4 without
unfreezing the
> python version):
>
> # bash configure --with-boot-jdk=
> --with-devkit=/opt/solarisstudio12.4
> # gmake bootcycle-images
> ...
> Compiling 163 files for jdk.jfr
> "/root/jdk11/jdk11u/src/hotspot/os/solaris/os_solaris.cpp", line
1580:
> Error: EM_486 is not defined.
> "/root/jdk11/jdk11u/src/hotspot/os/solaris/os_solaris.cpp", line
1618:
> Error: The type "const arch_t[]" is incomplete.
> 2 Error(s) detected.
> gmake[3]: *** [lib/CompileJvm.gmk:151:
>

/root/jdk11/jdk11u/build/solaris-sparcv9-normal-server-release/hotspot/variant-server/libjvm/objs/os_solaris.o]
> Error 2
>
> After patching with http://robpetti.com/files/jdk11-sol114.patch
to fix
> https://bugs.openjdk.java.net/browse/JDK-8182035, it gets a bit
further,
> but still fails:
>
> Compiling 64 files for jdk.jconsole
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 161: Error: __pad is not a member of const __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 163: Error: __pad is not a member of const __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 165: Error: __pad is not a member of const __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 165: Error: __pad is not a member of const __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 167: Error: __pad is not a member of const __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 170: Error: __pad is not a member of __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 170: Error: __pad is not a member of __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 172: Error: __pad is not a member of __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 172: Error: __pad is not a member of __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 174: Error: __pad is not a member of __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 174: Error: __pad is not a member of __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 176: Error: __pad is not a member of __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 176: Error: __pad is not a member of __FILE.
>

"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> line 178: Error: __pad is not a member of __FILE.
>


Re: OpenJDK 11.0.2 cannot build on Solaris 11.4

2019-01-18 Thread Rob Petti
Thanks, Erik!

I tried the createSolarisDevkit12.4.sh script, but none of the packages in
that list exist in the package manager at those specific versions, so it
just fails. I basically had to make my own list of packages from scratch
using the existing one as a guideline.

Zones sound like a cleaner solution to me, but I don't know enough about
them to know how to install a specific base OS version. All the docs I find
just install the same version as the 'host'. I'll need to do a bunch more
research, it seems...

On Fri, Jan 18, 2019 at 5:17 PM Erik Joelsson 
wrote:

> Hello Rob,
>
> On 2019-01-17 13:57, Rob Petti wrote:
> > Hey Folks,
> >
> > I've discovered that OpenJDK 11 cannot be built on Solaris 11.4. Normally
> > we would just try to rebuild our system as 11.1, but that's not possible
> > since media for that base release is no longer available.
> >
> > Are there plans to support compilation on Oracle's latest and greatest,
> or
> > at least provide a proper method of building in such an environment?
>
> I can't speak for all OpenJDK contributors, but Oracle has no current
> plans for this. We are required to build on the oldest supported Solaris
> version to produce binaries that are compatible with that version. We do
> not produce different binaries for different versions of an OS. Also, as
> I understand it, Oracle is no longer involved in open support of 11u.
> Perhaps the new maintainer will accept contributions for fixing the issue.
>
> > For the record, here are the errors I'm getting. This is with
> solarisstudio
> > 12.4 (which BTW wouldn't install on Solaris 11.4 without unfreezing the
> > python version):
> >
> > # bash configure --with-boot-jdk=
> > --with-devkit=/opt/solarisstudio12.4
> > # gmake bootcycle-images
> > ...
> > Compiling 163 files for jdk.jfr
> > "/root/jdk11/jdk11u/src/hotspot/os/solaris/os_solaris.cpp", line 1580:
> > Error: EM_486 is not defined.
> > "/root/jdk11/jdk11u/src/hotspot/os/solaris/os_solaris.cpp", line 1618:
> > Error: The type "const arch_t[]" is incomplete.
> > 2 Error(s) detected.
> > gmake[3]: *** [lib/CompileJvm.gmk:151:
> >
> /root/jdk11/jdk11u/build/solaris-sparcv9-normal-server-release/hotspot/variant-server/libjvm/objs/os_solaris.o]
> > Error 2
> >
> > After patching with http://robpetti.com/files/jdk11-sol114.patch to fix
> > https://bugs.openjdk.java.net/browse/JDK-8182035, it gets a bit further,
> > but still fails:
> >
> > Compiling 64 files for jdk.jconsole
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 161: Error: __pad is not a member of const __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 163: Error: __pad is not a member of const __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 165: Error: __pad is not a member of const __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 165: Error: __pad is not a member of const __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 167: Error: __pad is not a member of const __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 170: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 170: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 172: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 172: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 174: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 174: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 176: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 176: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 178: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 178: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 182: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 183: Error: __pad is not a member of __FILE.
> >
> "/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
> > line 184: Error: __pad is not a member of __FILE.
> > 18 Error(s) 

Re: OpenJDK 11.0.2 cannot build on Solaris 11.4

2019-01-18 Thread Erik Joelsson

Hello Rob,

On 2019-01-17 13:57, Rob Petti wrote:

Hey Folks,

I've discovered that OpenJDK 11 cannot be built on Solaris 11.4. Normally
we would just try to rebuild our system as 11.1, but that's not possible
since media for that base release is no longer available.

Are there plans to support compilation on Oracle's latest and greatest, or
at least provide a proper method of building in such an environment?


I can't speak for all OpenJDK contributors, but Oracle has no current 
plans for this. We are required to build on the oldest supported Solaris 
version to produce binaries that are compatible with that version. We do 
not produce different binaries for different versions of an OS. Also, as 
I understand it, Oracle is no longer involved in open support of 11u. 
Perhaps the new maintainer will accept contributions for fixing the issue.



For the record, here are the errors I'm getting. This is with solarisstudio
12.4 (which BTW wouldn't install on Solaris 11.4 without unfreezing the
python version):

# bash configure --with-boot-jdk=
--with-devkit=/opt/solarisstudio12.4
# gmake bootcycle-images
...
Compiling 163 files for jdk.jfr
"/root/jdk11/jdk11u/src/hotspot/os/solaris/os_solaris.cpp", line 1580:
Error: EM_486 is not defined.
"/root/jdk11/jdk11u/src/hotspot/os/solaris/os_solaris.cpp", line 1618:
Error: The type "const arch_t[]" is incomplete.
2 Error(s) detected.
gmake[3]: *** [lib/CompileJvm.gmk:151:
/root/jdk11/jdk11u/build/solaris-sparcv9-normal-server-release/hotspot/variant-server/libjvm/objs/os_solaris.o]
Error 2

After patching with http://robpetti.com/files/jdk11-sol114.patch to fix
https://bugs.openjdk.java.net/browse/JDK-8182035, it gets a bit further,
but still fails:

Compiling 64 files for jdk.jconsole
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 161: Error: __pad is not a member of const __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 163: Error: __pad is not a member of const __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 165: Error: __pad is not a member of const __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 165: Error: __pad is not a member of const __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 167: Error: __pad is not a member of const __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 170: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 170: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 172: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 172: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 174: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 174: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 176: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 176: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 178: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 178: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 182: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 183: Error: __pad is not a member of __FILE.
"/opt/solarisstudio12.4/lib/compilers/include/CC/stlport4/stl/_stdio_file.h",
line 184: Error: __pad is not a member of __FILE.
18 Error(s) detected.

It seems the "right" way to do this would be to create a sysroot with older
11.1 headers and libraries, and compile against that. Unfortunately the
--with-sysroot configure option does not completely work correctly. The
compiler still tries to include /usr/include instead of the sysroot
headers, and that just results in more build errors. The only way it seems
to truly get it to use the sysroot was to physically replace /usr/include
on the machine with the version from the sysroot. This is obviously less
than ideal.
We have tried to get sysroot working on Solaris, and we are using it 
internally, against the recommendation of the Solaris team. It's not 
working perfectly though. According to the Solaris team, Solaris Studio 
does not support the concept of a sysroot. Their recommendation is to 
create zones with the OS version you need and build in those, which I 
find