autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Autoconf on Solaris 10 64-bit Sparcv9


From: Ralf Wildenhues
Subject: Re: Autoconf on Solaris 10 64-bit Sparcv9
Date: Sat, 29 Apr 2006 09:01:51 +0200
User-agent: Mutt/1.5.11+cvs20060403

Hi Chino,

* Chino Aureus wrote on Sat, Apr 29, 2006 at 06:36:25AM CEST:
> 
> I 'm currently porting my application (shared library actually) to 64-bit.
> I'm using autotools (i.e. automake, autoconf, etc...).

The issue you're having is a Libtool one.

> In Solaris 10, I was able to compile (doing ./configure, make and make
> install) my shared library ok but as 32-bit.  However, since I want this to
> be compiled as 64-bit, I added the -m64 and -Wl,-64 options to CPPFLAGS and
> LDFLAGS respectively.  When I compile:

It should suffice to

  ./configure CPPFLAGS=-m64 LDFLAGS=-m64

and not change any files.

> ld: fatal: file .libs/libNecropolis_la-Logger.o: wrong ELF class: ELFCLASS64

Get libtool-1.5.22 and rebootstrap your code with it (this involves
rerunning libtoolize, and aclocal, after making sure it finds the newly
installed libtool.m4, etc.  Your package may use autoreconf, or a custom
script for it, often named bootstrap or autogen.sh).

Note that if your package uses convenience archives also: there was a
bug fix post 1.5.22 that affects Solaris with the native compiler (I
think with GCC it was ok).

> # Use this Makefile.am when compiling on SunOS5.10 64-bit sparcv9 system

> libNecropolis_la_CPPFLAGS = -D_REENTRANT -m64
> libNecropolis_la_LDFLAGS = -module -shared -version-info 1:1:0
> -Wl,-soname=libNecropolis,-64

I would not put the 64 bit stuff hard-coded in Makefile.am.
Neither the soname; libtool should figure this all out by itself.
(Not the -D_REENTRANT part; I don't know if some macro like
AX_PTHREAD.m4 from the Autoconf Macro Archive would be useful for you.)

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]