Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sat, 5 Mar 2016 16:18:51 -0500
From: Rich Felker <>
Subject: Re: Error on compiling musl for i386.

On Sat, Mar 05, 2016 at 07:58:42PM +0200, John Found wrote:
> Hello all!
> It is about musl v1.1.14
> I am trying with:
> #./configure --host=i386
> #make
> But get the following error:
> sed -f ./tools/mkalltypes.sed ./arch/i386/bits/ ./include/ > obj/include/bits/alltypes.h
> gcc -std=c99 -nostdinc -ffreestanding -fexcess-precision=standard -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  -fPIC -fno-stack-protector -DCRT -c -o obj/crt/Scrt1.o crt/Scrt1.c
> {standard input}: Assembler messages:
> {standard input}:11: Error: operand type mismatch for `push'
> {standard input}:12: Error: operand type mismatch for `push'
> {standard input}:15: Error: operand type mismatch for `push'
> Makefile:151: recipe for target 'obj/crt/Scrt1.o' failed
> make: *** [obj/crt/Scrt1.o] Error 1
> What I am doing wrong? 
> Notice: My C/C++ programming skills are close to zero, so please explain simple. :)

I think your gcc is a compiler for some arch other than i386, probably
x86_64. Using --host=i386 forces configure to assume you're telling it
the right arch and suppresses auto-detection. If this is the problem,
you can either set CC to a cross-compiler when invoking configure, or
try CC="gcc -m32".

I have some ideas for making this more foolproof in the future.


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.