mailing list of musl libc
 help / color / mirror / code / Atom feed
* Error on compiling musl for i386.
@ 2016-03-05 17:58 John Found
  2016-03-05 21:18 ` Rich Felker
  0 siblings, 1 reply; 3+ messages in thread
From: John Found @ 2016-03-05 17:58 UTC (permalink / raw)
  To: musl mainling list

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/alltypes.h.in ./include/alltypes.h.in > 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. :)

Best Regards
-- 
http://fresh.flatassembler.net
http://asm32.info
John Found <johnfound@asm32.info>


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Error on compiling musl for i386.
  2016-03-05 17:58 Error on compiling musl for i386 John Found
@ 2016-03-05 21:18 ` Rich Felker
  2016-03-05 21:46   ` John Found
  0 siblings, 1 reply; 3+ messages in thread
From: Rich Felker @ 2016-03-05 21:18 UTC (permalink / raw)
  To: musl

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/alltypes.h.in ./include/alltypes.h.in > 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.

Rich


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Error on compiling musl for i386.
  2016-03-05 21:18 ` Rich Felker
@ 2016-03-05 21:46   ` John Found
  0 siblings, 0 replies; 3+ messages in thread
From: John Found @ 2016-03-05 21:46 UTC (permalink / raw)
  To: musl

On Sat, 5 Mar 2016 16:18:51 -0500
Rich Felker <dalias@libc.org> wrote:

> 
> 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.
> 
> Rich

Exactly! CC="gcc -m32" fixed the issue and it compiles and installs fine. 
I know about -m32 option, but I though it will be set by the ./configure script
when I set --host=i386, because there is no 64bit i386 processors.

So, you are right that it needs some fixing, especially for such noobs as me. ;)

Best Regards
-- 
http://fresh.flatassembler.net
http://asm32.info
John Found <johnfound@asm32.info>


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-03-05 21:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-05 17:58 Error on compiling musl for i386 John Found
2016-03-05 21:18 ` Rich Felker
2016-03-05 21:46   ` John Found

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).