SUMMARY: turn on 32 bits compibility kernel

2007-12-24 21:16:00

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)
---------------------------------------------------------------

Comments

Got something to say?

You must be logged in to post a comment.