stubs-x32.h missing ...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 ?




[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux