public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* stubs-x32.h missing ...
@ 2020-08-11 10:50 aotto
  2020-08-11 11:08 ` Stefan Ring
  2020-08-11 11:12 ` Jonathan Wakely
  0 siblings, 2 replies; 6+ messages in thread
From: aotto @ 2020-08-11 10:50 UTC (permalink / raw)
  To: opensuse-de; +Cc: gcc-help

Hi,

is something missing on opensuse ?

→ I mean the file: gnu/stubs-x32.h


Hi,

I use a 64bit cpu CPU E3-1275 V2 and cross-compile a 32bit software using :

     g++-8 -m32

with the target :

     i686-suse-linux-gnu

The configure setting the makefile variable :

     target_cpu = i686

And than libtool is called with :

/bin/bash ../../libtool  --tag=CC   --mode=compile /usr/bin/ccache gcc-8 
-m32 -DHAVE_CONFIG_H -I. -I/path/to/theLink/tclmsgque -I../..   -DNDEBUG 
-DMQ_HAS_THREAD -shared -I/path/to/theLink/tclmsgque/../libmsgque 
-I/path/to/ext/i686-suse-linux-gnu/release/include -DUSE_TCL_STUBS 
-Wstrict-prototypes -Wconversion -Werror=maybe-uninitialized -Werror 
-DMQ_IGNORE_EXTERN -fvisibility=hidden -O2 -Wall -Wcast-align -pthread 
-MT tclmsgque_la-MqExceptionC_tcl.lo -MD -MP -MF 
.deps/tclmsgque_la-MqExceptionC_tcl.Tpo -c -o 
tclmsgque_la-MqExceptionC_tcl.lo `test -f 'MqExceptionC_tcl.c'

creating the libtool execute gcc call :

/bin/bash ../../libtool  --tag=CC   --mode=compile /usr/bin/ccache gcc-8 
-m32 -DHAVE_CONFIG_H -I. -I/path/to/theLink/tclmsgque -I../..   -DNDEBUG 
-DMQ_HAS_THREAD -shared -I/path/to/theLink/tclmsgque/../libmsgque 
-I/path/to/ext/i686-suse-linux-gnu/release/include -DUSE_TCL_STUBS 
-Wstrict-prototypes -Wconversion -Werror=maybe-uninitialized -Werror 
-DMQ_IGNORE_EXTERN -fvisibility=hidden -O2 -Wall -Wcast-align -pthread 
-MT tclmsgque_la-MqErrorC_tcl.lo -MD -MP -MF 
.deps/tclmsgque_la-MqErrorC_tcl.Tpo -c -o tclmsgque_la-MqErrorC_tcl.lo 
`test -f 'MqErrorC_tcl.c' || echo 
'/home/dev1usr/Project/NHI1/theLink/tclmsgque/'`MqErrorC_tcl.c


PROBLEM: If I compare performance between 64 and 32 bit build executable 
than I figure out that the 32bit is slower
-> the question is now… why?

possible answer:

1. libtool does not use the target_cpu

2. extensions available on 64bit cpu (like E3-1275 V2) are NOT used with 
the 32bit build
    this mean the cpu is not proper used

from gcc docu:

-m32:    The -m32option sets |int|, |long|, and pointer types to 32 
bits, and generates code that runs on any i386 system.
-mx32:   The -mx32option sets |int|, |long|, and pointer types to 32 
bits, and generates code for the x86-64 architecture.

testing ...

 > gcc -mx32 test.c
In file included from /usr/include/features.h:447:0,
                  from /usr/include/bits/libc-header-start.h:33,
                  from /usr/include/stdio.h:27,
                  from test.c:1:
/usr/include/gnu/stubs.h:13:11: fatal error: gnu/stubs-x32.h: Datei oder 
Verzeichnis nicht gefunden
  # include <gnu/stubs-x32.h>
            ^~~~~~~~~~~~~~~~~
compilation terminated.

checking glibc: -> stubs-x32.h missing.

# rpm -ql glibc-devel-32bit
/usr/include/gnu
/usr/include/gnu/lib-names-32.h
/usr/include/gnu/stubs-32.h
/usr/lib/Mcrt1.o
/usr/lib/Scrt1.o
/usr/lib/crt1.o
/usr/lib/crti.o
/usr/lib/crtn.o
/usr/lib/gcrt1.o
/usr/lib/libBrokenLocale.so
/usr/lib/libanl.so
/usr/lib/libc.so
/usr/lib/libc_nonshared.a
/usr/lib/libcidn.so
/usr/lib/libcrypt.so
/usr/lib/libdl.so
/usr/lib/libg.a
/usr/lib/libieee.a
/usr/lib/libm.so
/usr/lib/libmcheck.a
/usr/lib/libnss_compat.so
/usr/lib/libnss_db.so
/usr/lib/libnss_dns.so
/usr/lib/libnss_files.so
/usr/lib/libnss_hesiod.so
/usr/lib/libowcrypt.so
/usr/lib/libpthread.so
/usr/lib/libpthread_nonshared.a
/usr/lib/libresolv.so
/usr/lib/librpcsvc.a
/usr/lib/librt.so
/usr/lib/libthread_db.so
/usr/lib/libutil.so


question: where get I the "stubs-x32.h" setup ?


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

end of thread, other threads:[~2020-08-11 11:23 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-11 10:50 stubs-x32.h missing aotto
2020-08-11 11:08 ` Stefan Ring
2020-08-11 11:12 ` Jonathan Wakely
2020-08-11 11:15   ` Jonathan Wakely
2020-08-11 11:23     ` aotto
2020-08-11 11:22   ` aotto

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 read-only IMAP folder(s) and NNTP newsgroup(s).