Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Sun, 17 Jun 2012 19:24:01 +0200
From: Bruno Haible <bruno@...sp.org>
To: Rich Felker <dalias@...ifal.cx>, musl@...ts.openwall.com
Subject: installation on bi-arch system

Hi,

Trying to install musl-0.9.1 as a 32-bit library on a bi-arch x86_64
glibc system. The usual way to configure packages for this configuration
is
  ./configure CC="gcc -m32"
or
  CC="gcc -m32" ./configure
See <http://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Preset-Output-Variables.html>.
But this does not work with musl's configure script:

$ CC="gcc -m32" ./configure --prefix=/arch/x86-linux/inst-musl --exec-prefix=/arch/x86-linux/inst-musl CC="gcc -m32"
checking for C compiler... gcc -m32
checking whether compiler is gcc... no
checking target system type... unknown
./configure: unable to detect target arch; try ./configure --target=...

As a workaround, I have to create a wrapper script that invokes "gcc -m32 ..."
and pass that as CC. This should not be needed.

Additionally, the musl-gcc script that gets created by "make install" looks
like this:

#!/bin/sh
exec gcc "$@" -specs "/arch/x86-linux/inst-musl/lib/musl-gcc.specs"

When invoked with option "-c", it produces 64-bit .o files. To produce
32-bit .o files, it should read like this:

#!/bin/sh
exec gcc-32 "$@" -specs "/arch/x86-linux/inst-musl/lib/musl-gcc.specs"

or like this:

#!/bin/sh
exec gcc -m32 "$@" -specs "/arch/x86-linux/inst-musl/lib/musl-gcc.specs"

Bruno

Powered by blists - more mailing lists

Your e-mail address:

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.