SUMMARY: turn on 32 bits compibility kernel

From: Jordi Vidal <jordivi_at_wotrant.com>
Date: Tue Nov 20 2001 - 07:43:42 EST
Thanks

Brian Scanlan 
Manuela Menchi 
Dan Lowe 
Carl Marino 
Casper Dik 
"Riddoch, John E SITI-ITDSEP3" 

SUMMARY:

For normal applications there are always 32 bit compatibility, 
Some applications (like lsof) needs to be compiled with a 64 bit complier
(like gcc 3.0) or use a precompiled 64 bit version.


QUOTES:

You've no choice! It'll be compatible for 32 bit applications anyway...

...that is, for applications which aren't intimately involved in the
workings of the kernel. You'll need a 64-bit compiler to compile lsof
in 64-bit mode, or you could just download it precompiled from
sunfreeware.com - Gcc 3.0 has 64-bit capabilities.

maybe you already know this, you can double check if you have turned
compatibility for 32 bits applications on with the command

isainfo -v

To boot into a 32-bit kernel, either set 'boot-file' in the EEPROM to
'kernel/unix' or get to an ok prompt and type 'boot kernel/unix'.
If you are in a hurry you can get the lsof-4.45-64-bit package from
http://sunfreeware.com/

32 bit application compatibility is always on it cannot
be turned off.

Ah, lsof is a "kernel memory browser"; as such, it is on of the applications
that must run in native mode.

You need to recompile lsof with a 64 bit compiler.

lsof is rather a special case because it hooks into the kernel.  You'll need
a 64 bit version of the binary to run on a 64 bit kernel.  You can download
one from www.sunfreeware.com


ORIGINAL:

Hi All

	When I installed Solaris8 in a NetraT1 I'm sure I turned
compatibility for 32 bits applications on. Now I'vwe compiled an
application and returns this message:

-----------------------------------------------------------
# ./lsof -i
lsof: FATAL: lsof was compiled for a 32 bit kernel,
      but this machine has booted a 64 bit kernel.
-----------------------------------------------------------

-----------------------------------------------------------------
bash-2.03$ isainfo -v
64-bit sparcv9 applications
32-bit sparc applications
bash-2.03$ file lsof
lsof:           ELF 32-bit MSB executable SPARC Version 1, dynamically
linked, not stripped
bash-2.03$ ./lsof -i
lsof: FATAL: lsof was compiled for a 32 bit kernel,
      but this machine has booted a 64 bit kernel.
bash-2.03$ /usr/local/bin/gcc -v
Reading specs from
/usr/local/lib/gcc-lib/sparc-sun-solaris2.8/2.95.2/specs
gcc version 2.95.2 19991024 (release)
---------------------------------------------------------------
Received on Tue Nov 20 12:43:42 2001

This archive was generated by hypermail 2.1.8 : Wed Mar 23 2016 - 16:32:36 EDT