Oracle Solaris Studio Troubleshooting

 

Installation Issues

Sun Studio Releases Platform/OS Issue Workaround/Patch
Sun Studio 12 SPARC systems When installing with the tarfile installer, some important symbolic links might not be installed. This could cause linker errors or strange runtime behavior from compiled programs. Type the command:
ls /SUNWspro/lib/sparc
If the result is:
sparc: No such file or
 directory
type the following commands (where install-directory is the path to the location of the Sun Studio 12 installation, for example /opt).
cd /
                                
install-directory/
SUNWspro/lib ln -s v8plus sparc ln -s v8plusa sparcvis ln -s v8plusb sparcvis2 ln -s ../v9 v8plus/64 ln -s ../v9a v8plusa/64 ln -s ../v9b v8plusb/64
Sun Studio 11 All If you run the Sun Studio 11 installer with a version of the J2SE technology earlier than 1.4.0, you might receive an exception during serialization or an exception stating that the class com.sun.install.products
.Product
was not found.
If you receive one of these exceptions, see the Installation Information section of the Release Notes for more information.

dbx Debugger Issues

Sun Studio Releases Platform/OS Issue Workaround/Patch
Sun Studio 12, Sun Studio 12 Update 1 SPARC and x86 based systems running Solaris 10 10/07 OS The dbx debugger dumps core when you use the check -access command to do memory access checking. Use the following rtc skippatch commands:
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
Sun Studio 12, Sun Studio 12 Update 1 x86 based systems running Solaris 10 10/08 OS 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.

This bug is introduced when kernel patch 127112 is installed.

Installing kernel patch 137112 will fix this problem.
Sun Studio 10, Sun Studio 11 Solaris 10 OS If you are running the Sun Studio software on the Solaris 10 OS, and you have downloaded and installed any of the following patches from http://sunsolve.sun.com, the dbx debugger might crash when you debug a 64-bit application.
SPARC platforms:
119963-03 (Shared library patch for C++)
120753-01 (libmtsk patch)

x86 platforms:
119964-03 (Shared library patch for C++)
120754-01 (libmtsk patch)
The following patches, which correct this problem, are available for download.
SPARC platforms:
119963 (Shared library patch for C++)
120753 (libmtsk patch)

x86 platforms:
119964 (Shared library patch for C++)
120754 (libmtsk patch)
You can also correct this problem by:
  • Upgrading your system to the Solaris 10 OS 1/06 update release.
  • Installing the appropriate dbx patch for the version of Sun Studio software you are running:
    117844 for Sun Studio 10 software on SPARC platforms
    117845 for Sun Studio 10 software on x86 platforms
    121023 for Sun Studio 11 software on SPARC platforms
    121616 for Sun Studio 11 software on x86 platforms
Sun Studio 11 Solaris 10 OS 3/05 HW2, Solaris 10 OS The dbx debugger might hang immediately after loading program information for the program you are debugging. This behavior is caused by a kernel bug.

The kernel bug occurs in the following releases of the Solaris OS:

  • Solaris 10 OS 3/05 HW2. To determine whether you are running this Solaris OS release type the following command at a terminal shell prompt:
    more /etc/release
    
  • The Solaris 10 OS on SPARC based systems if you have installed one of the following patches:
    118822-19
    118822-20
    118822-21
    118822-22
  • The Solaris 10 OS on x86 based systems if you have installed one of the following patches:
    118844-19
    118844-20
    118844-21
    118844-22
The patch that fixes the kernel bug on SPARC platforms is 118822. Before installing this patch, install patch 118822. Before installing this patch, install patch 119578, upon which 118822 is dependent.

The patch that fixes the kernel bug on x86 platforms is 118844. Before installing this patch, install the following patches, upon which 118844 is dependent:

119255
117435
118344
113000

There is a workaround for this problem. When dbx hangs, do one of the following:

  • Type Control-c twice. Warnings are displayed, but dbx prompts you for a command.
  • In a terminal window on the same machine where dbx is running:
    1. Use the ps command to determine the process ID of the program you are debugging.
      ps -ef | grep program_name
      
    2. Use the prun command to start the program.
      prun process_ID
      
    3. dbx prompts you for a command.

General Compiler Issues

Sun Studio Releases Platform/OS Issue Workaround/Patch
Sun Studio 12 Update 1 SPARC and x86 based systems running later updates of the Solaris 10 OS or the OpenSolaris 2009.06 OS Segmentation faults like the following have occurred during compilation:
ld: fatal: file /opt/
 sunstudio12.1/
 prod/lib/crti.o:
 section [9].rela.annotate has
 invalid type [ SHT_RELA ]
f95: Fatal error in ld:
 Segmentation Fault
*** Error code 1 (ignored)
Compile with the -xannotate=no option

C++ Compiler Issues

Sun Studio Releases Platform/OS Issue Workaround/Patch
Sun Studio 12, Sun Studio 12 Update 1 x86 based systems running Solaris 10 10/07 OS C++ programs crash on starup due to stack misalignment. Shared library patch for C++ 119964

Performance Tools Issues

Sun Studio Releases Platform/OS Issue Workaround/Patch
Sun Studio 12 Update 1 Red Hat Enterprise Linux 5.2, CentOS 5.3 Experiment might not contain Sun TM ClusterTools MPI state profiling data on some Linux systems when the application is compiled with a GNU or Intel compiler. Use the -WI and --enable-new-dtags options with the ClusterTools link command. These options cause the executable to define RUNPATH in addition to RPATH, allowing ClusterTools MPI State libraries to be enabled with the LD_LIBRARY_PATH environment variable.

Documentation Errata

Sun Studio Releases Platform/OS Issue Workaround/Patch
Sun Studio 12 Update 1 x86 based systems The documentation does not mention that the compilers will accept the -xtarget=barcelona option on x86/x64 platforms. The option expands to:
-xarch=amdsse4a
 -xcache=64/64/2:512/64/16
 -xchip=amdfam10
N/A
Sun Studio 12 Update 1 SPARC based systems

The -xtarget expansions for ultra3, ultra3i, ultra3cu, ultra3iplus, ultra4, ultra4plus all include -xarch=sparcvis2. Also the documentation does not mention that -xtarget accepts ultra4 and ultra4plus.

The expansion of -xtarget=ultra4 is

-xarch=sparcvis2
 -xcache=64/32/4:8192/128/2
 -xchip=ultra


The expansion of -xtarget=ultra4plus is

-xarch=sparcvis2
 -xcache=64/32/4/1:2048/
 64/4/2:32768/
 64/4/2
 -xchip=ultra4plus


You can always check the expansion of any -xtarget option by invoking the compiler with the -### option of the cc command or -xdryrun option of the CC and f95 commands. For example:

$ CC -xdryrun -xtarget=ultra4
###     command line files and
 options (expanded):
### -dryrun -xarch=sparcvis2
 -xcache=64/32/4:8192/128/2
 -xchip=ultra4 

 

N/A
Sun Studio 10 Solaris 9 OS on SPARC based systems The Sun Studio 10 for Solaris Platforms Release Notes contains an error. It shows the required X11 6.6.1: Xsun patch for the Solaris 9 OS on SPARC based systems that is included in the J2SE installer as patch number 112785-342. The correct patch number is 112785-42. N/A