Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 16 Feb 2016 13:10:58 +0300 (MSK)
From: Alexander Monakov <amonakov@...ras.ru>
To: musl@...ts.openwall.com
Subject: Re: Compile error with --target=i386

On Tue, 16 Feb 2016, Petr Petrov wrote:
> I'm trying to build the latest musl-libc 1.1.13 on i386 architecture.
> I'm using the following line:
> 
> ./configure --target=i386
> make
> 
> and I got:
> gcc -std=c99 -nostdinc -ffreestanding -ffloat-store -frounding-math
> -Wa,--noexecstack -D_XOPEN_SOURCE=700 -I./arch/i386 -I./arch/generic
> -Iobj/src/internal -I./src/internal -Iobj/include -I./include  -Os -pipe
> -fomit-frame-pointer -fno-unwind-tables -fno-asynchronous-unwind-tables
> -ffunction-sections -fdata-sections -mtune=generic
> -Werror=implicit-function-declaration -Werror=implicit-int
> -Werror=pointer-sign -Werror=pointer-arith -include vis.h  -c -o
> obj/src/fenv/i386/fenv.o src/fenv/i386/fenv.s
> src/fenv/i386/fenv.s: Assembler messages:
> src/fenv/i386/fenv.s:12: Error: suffix or operands invalid for `pop'

It seems you'd like to compile a 32-bit musl on an x86-64 glibc-based system
using the dual-abi (x86-64 + i386) capability of the host GCC.

If so, you need to pass -m32 on the gcc command line to generate 32-bit code:

./configure --target=i386 CC=gcc\ -m32

Alexander

Powered by blists - more mailing lists

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