See Also: Using Sun Studio with OpenSolaris
- By Solaris version
- OpenSolaris (Nevada, SXCE, etc)
- Required IPS packages for Sun Studio
- Nevada Build 92 causes dbx and analyzer problems
- SS12ML issues on OpenSolaris
- Solaris 10 FCS
- Register save problem (C++/x86) in OS (CR 6264451) - Fixed in S10u1
- Dbx crashes (CR 6347707) - Fixed in S10u1
- Solaris 10 Update 5
- Solaris 10 Update 6
- SS12ML dbx coredumps on x86/x64 S10U6 after RTC "check -access" startup
- Some C++ CCVS7.2 tests dumps core on x86/x64 S10U6
- Solaris 9
- Solaris 8
- By Sun Studio Feature
- SUNWlibC patches to fix the C++ programs crash on amd64
- discover, postopt dependency on a new Solaris interface
- Platform Libraries
By Solaris version
OpenSolaris (Nevada, SXCE, etc)
Required IPS packages for Sun Studio
From a fresh installed OpenSolaris 5/08, the user needs to
install these two IPS packages:
$ pfexec pkg install SUNWipkg@0.5.11-0.86
$ pfexec pkg install entire@0.5.11-0.86
Prior to run Sun Stuio, the users need to make sure the following OS dependencies
are installed:
$ pfexec pkg install SUNWhea@0.5.11-0.86
$ pfexec pkg install SUNWarc@0.5.11-0.86
$ pfexec pkg install SUNWj6dev@0.5.11-0.86
To install Sun Studio Express 5/08 IPS packages:
$ pfexec pkg install sunstudioexpress
Nevada Build 92 causes dbx and analyzer problems
Due to a well-deserved and long-overdue cleanup of public libc symbols,
dbx developed a few bugs in its Runtime Checking functionality.
6718162 Command "bcheck" does not work on Solaris Nevada build 92. 6718130 dbx/runtime Remove the use of synonyms in RTC 6718460 RTC: SPARC: snv_92: MT sanity check error -- disabling Error Checking file: rtc_mt.c line: 368
SS12ML issues on OpenSolaris
Sun Studio 12ML does not work well on OpenSolaris due to the following reasons:
1) The installer requires showrev and patchadd, but there are bugs associated
with them:
http://defect.opensolaris.org/bz/show_bug.cgi?id=1819
http://defect.opensolaris.org/bz/show_bug.cgi?id=1944
2) dbx RTC SIGSEV on OpenSolaris 5/08
The patch for this bug fixes has not been planned yet.
3) The users need to make sure "SUNWhea", and "SUNWarc" IPS packages are
installed on the system prior to run C and C++ compilers, and "SUNWj6dev"
package prior to run the IDE.
Solaris 10 FCS
Register save problem (C++/x86) in OS (CR 6264451) – Fixed in S10u1
Dbx crashes (CR 6347707) – Fixed in S10u1
Solaris 10 Update 5
dbx hangs with "Unexpected SIGTRAP" on x86
This is a kernel regression that affects dbx.
When the dbx debugger is being used on the Solaris 10 OS on x86 platforms to debug a program that raises or delivers signals that have signal handlers, dbx might receive an unexpected SIGTRAP signal from the kernel that causes it to hang. This situation can occur when dbx is single stepping, running to a breakpoint, collecting runtime checking (RTC) data, or performing any other activity that depends on signal trapping. In some cases, dbx displays a warning of a unexpected SIGTRAP signal when it hangs. For example:
dbx: internal warning: unexpected SIGTRAP!
In other cases, dbx indicates receipt of a SEGV signal, for example:
signal SEGV (no mapping at the fault address) in main at line 29 in file "test.c"
Then when the user uses a |cont -sig SEGV| command to continue execution with the SEGV signal, dbx displays the warning of the unexpected SIGTRAP.
Workaround: This bug is introduced into Solaris 10 on x86 platforms when kernel patch 127112 is installed. Currently, the only workaround is to not install this kernel patch, or to uninstall it if it has been installed. As soon as a patch is available that fixes this bug, the patch information will be posted on this page.
Solaris 10 Update 6
SS12ML dbx coredumps on x86/x64 S10U6 after RTC "check -access" startup
Workaround CR 6585707documents the workaround:
rtc skippatch libc.so -f lrw_rdlock lrw_unlock lrw_wrlock _lock_try
rtc skippatch libc.so -f read_lock_try read_unlock_try write_lock_try write_unlock_try
rtc skippatch libc.so -f queue_unlink mqueue_spawner thread_queue_dump
rtc skippatch libc.so -f thread_queue_fifo thread_queue_spin thread_queue_verify
rtc skippatch libc.so -f __rw_unlock __rw_trywrlock __rw_workerscnt
rtc skippatch libc.so -f __rwlock_destroy __rwlock_init
Some C++ CCVS7.2 tests dumps core on x86/x64 S10U6
Solution install SUNWlibC patch 119964-10 on x64/AMD system
Solaris 9
Solaris 8
By Sun Studio Feature
SUNWlibC patches to fix the C++ programs crash on amd64
Sparc Solaris 9 - 111711-17 (for 32 bits) and 111712-17 ( for 64 bits)
Sparc Solaris 10 - 119963-10
x86 Solaris 9 - 111713-14
x64 Solaris 10 - 119964-10
A Solaris ld.so.1 update caused all C++ programs on amd64 to crash
on startup due to stack misalignment. The linker was changed to be
more forgiving.
A customer who has the intermediate ld.so.1 version on amd64 would
not be able to run any C++ programs without the SUNWlibC patch.
discover, postopt dependency on a new Solaris interface
In order to use postopt and discover on Solaris you will need a new linker
interface (ld_open).
- linker RFE: http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6479848
- ARC case for linker feature: http://opensolaris.org/os/community/arc/caselog/2006/595/
- The S10 SPARC patch is: 127111-07
- The S10 x86 patch is: 127112-07
- This RFE went into build 52 of Nevada (two years before this writing)
- This feature is in Solaris 10 update 5 and above.
- More on discover
Platform Libraries
There are several important runtime libraries that are required by programs built with Sun Studio. For example, libmtsk is required for OpenMP programs, and libCstd and libCrun are required by many C++ programs.
These libraries are delivered with Sun Studio for Express releases, but not for Sun Studio FCS releases. When using an FCS version of Sun Studio, you may need to get Solaris patches to bring those libraries up to date with the latest Sun Studio tools.
More information should be collected here and this section should be moved to a separate page about "Platform Libraries".