My Oracle Support Banner

Can't Run Application Under Solaris 11, only reports killed when run (Doc ID 2082886.1)

Last updated on AUGUST 01, 2016

Applies to:

Solaris Operating System - Version 11 11/11 and later
Information in this document applies to any platform.

Symptoms

When running the process on Solaris 11, it reports only "Killed"

$ ./{executable_name}
Killed

and running file against the executable :

$ file {executable_name}
{executable_name}: Sun demand paged SPARC executable dynamically linked

Running ldd and elfdump on Solaris 11 shows unsupported/unknown or invalid type.

$ ldd {executable_name}
ldd: {executable_name}: unsupported or unknown file type
$ elfdump {executable_name}
{executable_name}: invalid file type



If you still have the executable on the older version of Solaris and run ldd against the executable there:

$ ldd {executable}
libc.so.2.5 => /usr/4lib/libc.so.2.9 <-- Note the path includes /usr/4lib
libucb.so.1 => /usr/ucblib/libucb.so.1
libc.so.1 => /usr/lib/libc.so.1
...

...

If ldd reports: insecure a.out file, please run ldd as a non-root user, or try ldd -f {executable}

but also note that the file type is a.out which is what was used for the old Sun4 executables

Also see: https://docs.oracle.com/cd/E19455-01/806-1047/index.html

Binary Compatibility Guide

and https://docs.oracle.com/cd/E19455-01/806-1047/binary-4/index.html

...
Object and core File Formats
The SunOS 4.x release uses the a.out object file format. The Solaris 8 release uses the new Extensible Linking Format (ELF). 
Solaris 8 programming tools (such as cc, ld, and ar) generate ELF files, and the default exec file format is ELF.
The Solaris 8 exec identifies the executable file format (a.out or ELF) and uses the proper loading scheme.
The default core file format in SunOS 4.x is a.out and in the Solaris 8 release it is ELF. 
When executing an a.out file in this release using the Binary Compatibility Package, the core files generated will be in a.out format. 
The compatibility mechanism is triggered only when loading and executing files with a.out binary format.
...

SunOS 4.x used the a.out binary format while Solaris 8 and beyond uses ELF binary format. Solaris 8 though Solaris 10 also include both kernel modules and special code within the dynamic linker to properly handle both ELF or a.out executables

Changes

 Moving an executable or binary which worked under an older version of Solaris to a Solaris 11 or newer version of Solaris

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.